[Инфо] Wordpress: плюшки файла functions.PHP ))

Тема в разделе "Wordpress", создана пользователем Красавчег, 10 окт 2012.

Информация :
Все пользователи Nulled-а обязаны ознакомиться с основными правилами форума!
Правила: Правила форума
Правила раздела: ОБЩИЕ СВЕДЕНИЯ | Правила раздела | Правила оформления [​IMG]
Полезное: Раскодирование шаблонов | Шорткоды | Поиск плагинов | [​IMG] Складчины
Плюшки: functions.PHP - часть 1 | часть 2
Разделы WP: Шаблоны | CodeCanyon
Статус темы:
Закрыта.
Модераторы: ponoroshca
  1. seb

    seb Постоялец

    Регистр.:
    28 авг 2013
    Сообщения:
    54
    Симпатии:
    80
    Замена лого при логине
    PHP:
    //замена лого при логине
    function my_login_logo(){

    echo 
    '

    <style type="text/css">
    #login h1 a { background: url(/img/login-logo.png) no-repeat 0 0 !important; }
    </style>'
    ;

    }
    add_action('login_head''my_login_logo');

    add_filter'login_headerurl'create_function('''return get_home_url();') );

    add_filter'login_headertitle'create_function('''return "Ваше описание";') );
    /img/login-logo.png - указываем свой путь к картинке. И не забывем заменить headertitle
     
    AkkAdemik нравится это.
  2. Gami

    Gami Писатель

    Регистр.:
    13 май 2013
    Сообщения:
    3
    Симпатии:
    1
    Целиком слить плюшку не получится, вставлю ссылку. Описание примера ручного изменения шапки Wordpress.
     
    AkkAdemik нравится это.
  3. adward

    adward Создатель

    Регистр.:
    28 сен 2012
    Сообщения:
    11
    Симпатии:
    17
    Фенечку и свою внесу: Транслитерация имён загружаемых файлов: в случае, когда юзеры заливают на хостинг файлы, содержащие пробелы, спецсимворы, кириллицу, и даже файлы с названиями на татарском!
    Код:
    add_filter( 'sanitize_file_name', 'sanitize_title_with_translit' );
    Это только для тех, у кого установлен древний Rus-to-lat, без этого плагина код работать не будет.
     
    AkkAdemik и magicrobot нравится это.
  4. Varrcan

    Varrcan Создатель

    Регистр.:
    7 апр 2012
    Сообщения:
    26
    Симпатии:
    22
    Большинство плюшек собрал в плагин http://wordpress.org/plugins/mfp-mod-wp/
    Буду рад критике моего говнокода ))

    плагин русско-английский, язык автоматически определяется, в зависимости от вашей локали wordpress
     
    Последнее редактирование модератором: 15 дек 2013
    cart13, AkkAdemik, Walkman и 3 другим нравится это.
  5. nagan

    nagan Писатель

    Регистр.:
    4 май 2012
    Сообщения:
    4
    Симпатии:
    5
    Сделать счетчик просмотров статей без плагинов
    Вот эти две функции добавляем в файл functions
    PHP:
    function getPostViews($postID){
    $count_key 'post_views_count';
    $count get_post_meta($postID$count_keytrue);
    if(
    $count==''){
    delete_post_meta($postID$count_key);
    add_post_meta($postID$count_key'0');
    return 
    "0";
    }
    return 
    $count;
    }

    function 
    setPostViews($postID) {
    $count_key 'post_views_count';
    $count get_post_meta($postID$count_keytrue);
    if(
    $count==''){
    $count 0;
    delete_post_meta($postID$count_key);
    add_post_meta($postID$count_key'0');
    }else{
    $count++;
    update_post_meta($postID$count_key$count);
    }
    }
    Затем в шаблон поста добавляем для подсчета вот этот кусок:
    PHP:
    <?php setPostViews(get_the_ID()); ?>
    А для вывода самого количества вот этот:
    PHP:
    <?php echo getPostViews(get_the_ID()); ?>
     
    AkkAdemik, kastembay и darmoid нравится это.
  6. midrex

    midrex Создатель

    Регистр.:
    6 мар 2014
    Сообщения:
    35
    Симпатии:
    5
    Этот код для functions.php позволит вам окрасить строки в таблицах админки сайта в зависимости от статуса ( ожидает проверки, черновик, личная и т. д.) записи:
    PHP:
    add_action('admin_footer','posts_status_color');
    function posts_status_color(){
    ?>
    <style>
    .status-draft{background: #FCE3F2 !important;}
    .status-pending{background: #87C5D6 !important;}
    .status-publish{/* no background keep wp alternating colors */}
    .status-future{background: #C6EBF5 !important;}
    .status-private{background:#F2D46F;}
    </style>
    <?php

    Можно граммотно выводить последние твиты и фолловеров в Twitter и с помощью API-запросов с кешированием. Даже если на WordPress применяется пользовательский компонент кэширования. В этом коде для кэширования запросов с настраиваемым временем следующей чистки применяется Transient API .
    PHP:
    /**
    * Get the latest Tweet Text by Username
    * @param string $username: Twitter Username
    */

    function get_last_tweet($username='nasenmann'){
    if (
    false === ($last_tweet get_transient('last_tweet_by_'.$username))) {

    $res wp_remote_get('http://twitter.com/statuses/user_timeline/'.$username.'.json');
    $tweets json_decode($res['body']);

    foreach (
    $tweets as $tweet){
    if(empty(
    $tweet->in_reply_to_user_id)){
    $last_tweet $tweet->text;
    break;
    }
    }

    set_transient('last_tweet_by_'.$username$last_tweet10*60);

    }
    return 
    $last_tweet;
    }

    print_r(get_last_tweet());

     
    Последнее редактирование модератором: 5 май 2014
  7. PendalF

    PendalF Писатель

    Регистр.:
    27 апр 2014
    Сообщения:
    1
    Симпатии:
    2
    [...] - эти символы, да и вообще текст "читать далее" можно убрать путём задания первого параметра функции the_content('Тут ваш текст'). Теперь вместо "читать далее" в конце каждого анонса будет выводится "тут ваш текст". Можно задать пустую строку "" и тогда ничего в конце анонса выводится не будет.
     
    mischael1 и Varrcan нравится это.
  8. midrex

    midrex Создатель

    Регистр.:
    6 мар 2014
    Сообщения:
    35
    Симпатии:
    5
    База данных сайта WP может очень скоро "замусориваться" тысячами версий (ревизий) записей. Зачем может потребоваться 10-ки разных версий одного и того же материала? Это снижает производительность и ухудшает процесс резервного копирования сайта. Этот код, может либо совсем отключить их создание, либо установить разумного ограничение на их количество.

    Добавляем в файл wp-config.php (то что Вам нужно из 2-х вариантов)
    PHP:
     // disable post revisions
      
    define('WP_POST_REVISIONS'false);
    PHP:
     // limit five post revisions
      
    define('WP_POST_REVISIONS'5);

    Нередко бывает что обновление WP нарушает работу сайта, так вот чтобы обновление не произошло само собой поможет вот этот код для wp-config.php
    PHP:
    define('WP_AUTO_UPDATE_CORE'false);
     
    Последнее редактирование модератором: 5 май 2014
    ivanov-ig нравится это.
  9. MaxInf

    MaxInf Создатель

    Регистр.:
    25 апр 2014
    Сообщения:
    10
    Симпатии:
    1
    Подскажите, пожалуйста, как поставить ограничение на 3 записи, а все что старше 3-й правки удалялось бы из базы.

    "// limit five post revisionsdefine('WP_POST_REVISIONS', 3);" - ?.

    Извините, если уж совсем дурацкий вопрос.
     
  10. midrex

    midrex Создатель

    Регистр.:
    6 мар 2014
    Сообщения:
    35
    Симпатии:
    5
    Так, а что мешает попробовать и убедиться?
     
Статус темы:
Закрыта.