markratledge
  • 0
Гуру

Добавить функцию в Simple Twitter Connect to not Twitter page

  • 0

Как мне добавить возможность в Simple Twitter Connect (в файле stc-publish.php), чтобы не твитить страницы, недавно опубликованные или отредактированные? Мне не нужно, чтобы это была опция администратора, просто изменение для нескольких моих сайтов.

Похоже, что эта функция была бы хорошим местом для добавления возможности «не твитить страницы» (с сохранением проверки, чтобы предотвратить твитирование отредактированных сообщений), поскольку она проверяет отредактированные сообщения. Как отличить посты от страниц?

// this new function prevents edits to existing posts from auto-posting
add_action('transition_post_status','stc_publish_auto_check',10,3);
function stc_publish_auto_check($new, $old, $post) {
    if ($new == 'publish' && $old != 'publish') {
        $post_types = get_post_types( array('public' => true), 'objects' );
        foreach ( $post_types as $post_type ) {
            if ( $post->post_type == $post_type->name ) {
                stc_publish_automatic($post->ID, $post);
                break;
            }
        }
    }
}

Редактировать 03.04.11

Ответьте и лучше отредактируйте ниже.

Share
  1. Еще лучший ответ, который не требует изменения плагина:

    remove_action('transition_post_status','stc_publish_auto_check',10,3);
    add_action('transition_post_status','my_custom_publish_rules',10,3);
    function my_custom_publish_rules($new, $old, $post) {
      if ($post->post_type == 'page') return;
      else stc_publish_auto_check($new, $old, $post);
    }
    

    Поместите его в файл functions.php темы.

    Примечание: Всякий раз, когда вы имеете дело с функцией, вызываемой хуком действия или фильтра, вы можете легко обернуть вызов в другую функцию и вместо этого добавить в эту функцию свой собственный код. remove_action и remove_filter должны быть двумя инструментами, которые вы часто используете в своем арсенале WP.

    • 0
  2. Общий отказ от ответственности: это редактирование плагина. Любые изменения в плагинах будут потеряны при обновлении плагина. Поэтому это не рекомендуется, если вы не будете делать хорошие заметки и/или не помните, что делали это, когда плагин обновляется!! 😉 (@songdogtech, я знаю, что вы знаете о таких вещах, но я подумал, что было бы безответственно публиковать это без этого)

    http://www.rvoodoo.com/projects/wordpress/wordpress-tip-blocking-a-custom-post-type-from-auto-publish-with-simple-facebook-connect-sfc-plugin/

    как я блокирую CPT в плагине SFC, плагин STC работает так же

    найдите функцию stc_publish_automatic, я полагаю, что это так, и добавьте к ней страницу типа сообщения…

    Я найду код очень быстро, но хотел указать на него…. вы в правильном файле и близко к правильному коду

    РЕДАКТИРОВАТЬ:

    function stc_publish_automatic($id, $post) {
    
        // check to make sure post is published
        if ($post->post_status !== 'publish') return;
    

    Я бы подумал, отредактировав этот бит:

        function stc_publish_automatic($id, $post) {
    
            // check to make sure post is published
            if ($post->post_status !== 'publish') return;
         if ($post->post_type == 'page') return;
    

    сделал бы это…. (не проверено, но если бы работало для блокировки CPT в плагине SFC)

    Если вы посмотрите на сообщение, на которое я ссылаюсь, @Otto дал некоторые рекомендации в комментарии, с которыми вы, возможно, сможете работать лучше. Я просто редактирую плагин как быстрый и грязный, но похоже, вы тоже можете работать с ним из своей темы…..

    Если кто-нибудь может взять информацию здесь и информацию из комментария @Otto на моем сайте и обработать ее, я бы хотел увидеть этот код!

    • 0

Оставить ответ

You must login to add an answer.