Головна » WordPress » 29 WordPress Tweaks для поліпшення повідомлень і сторінок

    29 WordPress Tweaks для поліпшення повідомлень і сторінок

    Ми любимо WordPress - але не всі ми готові вирішити всі свої налаштування за замовчуванням і відображати - особливо, як відображаються повідомлення. Оскільки нас навчають, що унікальність має значення для брендингу веб-сайту, що дає відвідувачам велике враження, протягом цих років блогери та розробники прагнули налаштувати відображення посади, щоб зробити її якомога більш унікальною..

    Сьогодні ми збираємося зосередитися на розумних налаштуваннях, які ви можете виконати, щоб поліпшити відображення повідомлення в WordPress. Незалежно від того, чи бажаєте ви змінити відображення посади, щоб покращити досвід користувачів або збільшити дохід або покази сторінки, ймовірно, є спосіб зробити це без додатка, і більшість перелічених тут фрагментів легко реалізувати, у більшості випадків необхідно скопіювати та вставити наданий код.

    Сподіваюся, що ви знайдете ці хитрощі, корисні для ваших проектів, насолоджуйтеся налаштуванням!

    Передній кінець

    1. Змініть довжину виписки

    Налаштування нижче змінить довжину виписки, яку ви можете просто додати наступні рядки коду у ваш functions.php файлу з значенням 75 як довжина витримки.

     add_filter ('excerpt_length', 'my_excerpt_length'); функція my_excerpt_length ($ len) return 75;  

    [Джерело: Денні ван Кутен]

    2. Стиль Twitter “час назад” дати

    Більшість людей не знають, що WordPress має вбудовану функцію для відображення дати за допомогою “Час назад” Формат, а фрагмент нижче можна вставити в будь-яку частину циклу, щоб відобразити дату у форматі.

     Опубліковано  

    [Джерело: фрагменти PHP]

    3. Відображати мініатюру повідомлення в каналі RSS

    Введений в WordPress 2.9 the_post_thumbnail () Функція дуже корисна для додавання та відображення мініатюр, доданих до повідомлення. Погана новина полягає в тому, що немає вбудованого методу відображення мініатюри у RSS-каналі. Наведена нижче функція вирішить цю проблему. Просто вставте його у свій functions.php файл, збережіть його, а мініатюра повідомлення автоматично відобразиться у вашому каналі RSS.

     // показувати ескізи повідомлень у функції каналів diw_post_thumbnail_feeds ($ content) global $ post; якщо (has_post_thumbnail ($ post-> ID)) $ content = '
    '. get_the_post_thumbnail ($ post-> ID). '
    '. $ content; повернути $ content; add_filter ('the_excerpt_rss', 'diw_post_thumbnail_feeds'); add_filter ('the_content_feed', 'diw_post_thumbnail_feeds');

    [Джерело: копання в WordPress]

    4. Обмежте пошук лише для публікації назв

    Ви можете додати цей фрагмент до functions.php файл ваших тем WordPress, щоб обмежити пошук лише для публікації назв.

     функція __search_by_title_only ($ search, & $ wp_query) if (порожній ($ search)) повертає $ search; // пропускати обробку - немає запиту в запиті $ q = & $ wp_query-> query_vars; // wp-includes / query.php рядок 2128 (версія 3.1) $ n =! empty ($ q ['exact'])? ":"% '; $ searchand = "; foreach ((масив) $ q ['search_terms'] як $ term) $ term = esc_sql (like_escape ($ term)); $ search. = "$ searchand ($ wpdb-> posts.post_title LIKE '$ n $ term $ n')"; $ searchand = 'AND';  $ term = esc_sql (like_escape ($ q ['s'])); if (порожній ($ q ['речення']) && count ($ q ['search_terms'])> 1 && $ q ['search_terms'] [0]! = $ q ['s']) $ search. = "OR ($ wpdb-> posts.post_title LIKE '$ n $ term $ n')"; if (! empty ($ search)) $ search = "AND ($ search)"; if (! is_user_logged_in ()) $ search. = "AND ($ wpdb-> posts.post_password =") "; повернути $ search; add_filter ('posts_search', '__search_by_title_only', 10, 2); 

    [Джерело: WpSnipp]

    5. Відображайте збільшувальний номер на кожному повідомленні

    Налаштування нижче дозволить вам відображати збільшується кількість на кожному повідомленні, і реалізація його досить проста. Спочатку вставте наступну функцію у ваш functions.php файл:

     function updateNumbers () global $ wpdb; $ querystr = "SELECT $ wpdb-> posts. * З $ wpdb-> повідомлень WHERE $ wpdb-> posts.post_status = 'опублікувати' І $ wpdb-> posts.post_type = 'post' '; $ pageposts = $ wpdb-> get_results ($ querystr, OBJECT); $ counts = 0; if ($ pageposts): foreach ($ pageposts як $ post): setup_postdata ($ post); $ counts ++; add_post_meta ($ post-> ID, 'incr_number', $ counts, true); update_post_meta ($ post-> ID, 'incr_number', $ counts); endforeach; endif;  add_action ('publication_post', 'updateNumbers'); add_action ('deleted_post', 'updateNumbers'); add_action ('edit_post', 'updateNumbers'); 

    Після цього ви можете відобразити номер публікації з наступним кодом. Зауважте, що він повинен використовуватися в межах циклу.

     ID, "incr_number", true); ?> 

    [Джерело: Alchymyth, через WpRecipes]

    6. Виключити повідомлення з каналу WordPress

    Хочете виключити певні публікації з вашого каналу? Ось налаштування для вас. Зауважте, що ви повинні фільтрувати лише те, де потрібно фільтрувати; в нашому прикладі це в нашому харчуванні $ wp_query-> is_feed. Якщо ви не зробили цього, фільтр також працюватиме у вашому задньому кінці, і ці публікації не відображатимуться в огляді публікацій.

    Функція має два параметри. Ви даєте перший параметр $ де розширення рядка SQL, який буде піклуватися про фільтрацію на основі ID. Потім у дужках потрібно вставити Ідентифікатори повідомлень, яку ви бажаєте відфільтрувати.

     функція fb_post_exclude ($ де, $ wp_query = NULL) global $ wpdb; if (! $ wp_query) глобальний $ wp_query; if ($ wp_query-> is_feed) // виключає повідомлення з ідентифікаторами 40 і 9 $ де. = "І $ wpdb-> posts.ID NOT IN (40, 9)";  повернути $ where;  add_filter ('posts_where', 'fb_post_exclude', 1, 2); 

    [Джерело: WP Engineer]

    7. Перенаправляти на повідомлення, коли пошуковий запит повертає один результат

    Розмістіть цей фрагмент у functions.php файл вашої теми WordPress, щоб автоматично перенаправити ваш пошук на повідомлення, коли WordPress повертає лише один результат пошуку.

     add_action ('template_redirect', 'single_result'); function single_result () if (is_search ()) глобальний $ wp_query; if ($ wp_query-> post_count == 1) wp_redirect (get_permalink ($ wp_query-> повідомлення ['0'] -> ID));  

    [Джерело: WpSnipp]

    8. Автоматично створювати опис meta з__вмісту

    Додавання цього фрагмента до functions.php Файл вашого WordPress тема автоматично створить мета опис з вашого WordPress пост, викреслюючи всі шорткоди і теги. Також переконайтеся, що у вас є в header.php вашої теми WordPress або цей фрагмент не буде працювати.

     функція create_meta_desc () global $ post; if (! is_single ()) return;  $ meta = strip_tags ($ post-> post_content); $ meta = strip_shortcodes ($ post-> post_content); $ meta = str_replace (масив ("" "" "," "r", ""), ", $ meta); $ meta = substr ($ meta, 0, 125);"; add_action ('wp_head', 'create_meta_desc'); 

    [Джерело: WpSnipp]

    9. Автоматично замінити слова за допомогою партнерських посилань

    Щоб автоматично замінити слова за допомогою партнерських посилань, просто вставте код нижче functions.php файл. Не забувайте вводити слова / посилання, як показано в прикладі нижче.

     function replace_text_wps ($ text) $ replace = array (// 'WORD TO REPLACE' => 'ЗАМІНИТИ СЛОВО З ЦЬОМУ "теза" =>теза',' studiopress '=>'studiopress'); $ text = str_replace (array_keys ($ replace), $ replace, $ text); return $ text;  add_filter ('the_content', 'replace_text_wps'); add_filter ('the_excerpt', 'replace_text_wps'); 

    [Джерело: catswhoblog.com]

    10. Додати “Докладніше” Постійне посилання до кінця_експерта

    Додавання цього фрагмента нижче до functions.php Файл вашої теми WordPress додасть a “читати далі” Постійне посилання в кінці the_excerpt, дуже схожий на що контент робить.

     функція excerpt_readmore ($ more) return '…  "Докладніше". '';  add_filter ('excerpt_more', 'excerpt_readmore'); 

    [Джерело: WpSnipp]

    11. Показувати відповідні повідомлення без плагіна

    Встановлення коду нижче зробить ваш сайт WordPress відображенням пов'язаних повідомлень на основі поточної теги повідомлення. Ви повинні розмістити його всередині single.php, або просто в будь-якому місці, де ви хочете показати відповідні публікації.

     ID); if ($ tags) $ tag_ids = масив (); foreach ($ теги як $ individual_tag) $ tag_ids [] = $ individual_tag-> term_id; $ args = array ('tag__in' => $ tag_ids, 'post__not_in' => масив ($ post-> ID), 'showposts' => 5, // Кількість пов'язаних повідомлень, які будуть показані. 'caller_get_posts' => 1); $ my_query = new wp_query ($ args); if ($ my_query-> have_posts ()) echo '

    Схожі повідомлення

      '; в той час як ($ my_query-> have_posts ()) $ my_query-> the_post (); ?>
    • '; ?>

    [Джерело: Bin-Co]

    12. Створіть власні популярні повідомлення на бічній панелі

    Настроювання віджета бічної панелі для показу популярних повідомлень дуже просте. Просто скопіюйте та вставте код, вказаний нижче sidebar.php файл. Якщо потрібно змінити кількість показів, можна змінити 5 в кінці рядка 3 до будь-якого бажаного номера.

     

    Популярні повідомлення

      get_results ("SELECT comment_count, ID, post_title ВІД $ wpdb-> повідомлень ORDER BY comment_count DESC LIMIT 0, 5"); foreach ($ result as $ post) setup_postdata ($ post); $ postid = $ post-> ID; $ title = $ post-> post_title; $ commentcount = $ post-> comment_count; if ($ commentcount! = 0) ?>

    [Джерело: Pro Design Blog]

    13. Встановіть дату / час після закінчення терміну дії

    Нижче наведено корисний код, який ви можете помістити у ваші теми WordPress, щоб дозволити можливість створення посадочного терміну на основі дати та часу. Відредагуйте свою тему і замініть поточний цикл WordPress на цей "зламаний" цикл:

      $ expirationtime = get_post_custom_values ​​('expiration'); if (is_array ($ expirationtime)) $ expirestring = implode ($ expirationtime);  $ secondsbetween = strtotime ($ expirestring) -time (); if ($ secondsbetween> 0) // Для прикладу… the_title (); the_excerpt ();  endwhile; endif; ?> 

    Щоб створити повідомлення з терміном дії дати / часу, можна просто створити спеціальне поле. Дайте закінчення як ключ і дата / час (формат: мм / дд / рррр 00:00:00) як значення. Публікація не відображатиметься після певної мітки часу.

    [Джерело: WpRecipes]

    14. Перерахуйте майбутні повідомлення

    WordPress дозволяє перераховувати майбутні публікації, а щоб досягти цієї функції, просто вставте код, де б ви не хотіли відображатися в майбутньому:

     

    Майбутні події


    Не заплановано майбутніх подій.

    [Джерело: WpRecipes]

    15. Показувати лише відвідувачів AdSense для пошукових систем

    Можна відображати AdSense відвідувачам з результатів пошукових систем, і ось код для його досягнення, просто вставте код нижче в тему functions.php файл.

     function scratch99_fromasearchengine () $ ref = $ _SERVER ['HTTP_REFERER']; $ SE = масив ('/ search?', 'Images.google.', 'Web.info.com', 'search.', 'Del.icio.us/search', 'soso.com', '/ search / ',' .yahoo. '); foreach ($ SE як $ source) if (strpos ($ ref, $ source)! == false) return true;  повернути помилково;  

    $ SE масив, де ви вказуєте пошукові системи. Ви можете додати нову пошукову систему, додавши новий елемент до масиву, а потім вставте наступний код у будь-якому місці шаблону, де потрібно відображати об'яви AdSense, і це зроблено! Оголошення відображатимуться лише відвідувачам з результатів пошукових систем.

     if (function_exists ('scratch99_fromasearchengine')) if (scratch99_fromasearchengine ()) INSERT YOUR CODE HERE 

    [Джерело: Scratch99, через WpRecipes]

    Back End

    1. Дозволити більше HTML-тегів у редакторі

    За замовчуванням редактор WordPress не дозволяє HTML-теги, які не відповідають стандарту XHTML 1.0. Однак код, наведений нижче, змусить редактор прийняти більше тегів. Ви можете вставити його в тему functions.php файл, збережіть його, і функція хороша.

     Функція fb_change_mce_options ($ initArray) // Розділений комами рядок od продовжує теги // Команда розділила рядок розширених елементів $ ext = 'pre [id | name | class | style], iframe [вирівняти | longdesc | ім'я | ширина | висота | frameborder | scrolling | marginheight | marginwidth | src] '; if (isset ($ initArray ['extended_valid_elements'])) $ initArray ['extended_valid_elements']. = ','. $ ext;  else $ initArray ['extended_valid_elements'] = $ ext;  // може бути; set tiny paramter check_html // $ initArray ['verify_html'] = false; return $ initArray;  add_filter ('tiny_mce_before_init', 'fb_change_mce_options'); 

    [Джерело: WP Engineer]

    2. Встановіть редактор за замовчуванням

    Фрагмент фрагменту нижче змінює редактор за промовчанням у адміністраторі WordPress. Ви можете піти з Візуальний редактор, або ви можете вибрати Редактор HTML, просто додайте одну з них до functions.php файл.

     # Встановлює візуальний редактор за замовчуванням add_filter ('wp_default_editor', create_function ("," return "tinymce"; ')); # Це встановлює редактор HTML як типовий add_filter ("wp_default_editor", create_function ("," return "html) "; ')); 

    [Джерело: WP-фрагменти]

    3. Встановіть різні таблиці стилів редактора для різних типів повідомлень

    З наступним кодом вставляється у ваш functions.php файл, ви можете налаштувати різні таблиці стилів редактора для різних типів повідомлень. Вам доведеться адаптувати його, залежно від типів повідомлень, і не забудьте змінити імена стилів так само.

     функція my_editor_style () глобальна $ current_screen; switch ($ current_screen-> post_type) випадок 'post': add_editor_style ('editor-style-post.css'); перерву; case 'page': add_editor_style ('editor-style-page.css'); перерву; case 'portfolio': add_editor_style ('editor-style-portfolio.css'); перерву;  add_action ('admin_head', 'my_editor_style'); 

    [Джерело: WPStorm]

    4. Дозволяє завантажувати більше типів файлів

    З певних причин програма WordPress Uploader не дозволяє завантажувати певні типи файлів, наприклад, Textmate .tmCommand. Якщо вам потрібно завантажувати ці файли на ваш сайт WordPress, сюди входить функціональний фрагмент, який дозволяє вам це робити, і вам потрібно просто вставити його у ваш functions.php файл. Можна також додати більше типів файлів, додавши їх до рядка 4, розділених трубою (|).

      'application / octet-stream')); return $ mimes; ?> add_filter ('upload_mimes', 'addUploadMimes'); 

    [Джерело: pioupioum.fr, через WpRecipes]

    5. Увімкніть редактор TinyMCE для публікації the_excerpt

    Введення наступного фрагмента в functions.php Файл вашої теми WordPress додасть редактор TinyMCE до текстової області повідомлення.

     функція tinymce_excerpt_js () ?>     

    [Джерело: WpSnipp]

    6. Формати повідомлень - більш творчі способи для теми

    Нижче наведений синтаксис, який дає деякі з можливих форматів публікацій, які потім можна вибрати і використовувати безпосередньо в статті, і що потрібно зробити, це ввести код у ваш functions.php файл вашої теми.

     add_theme_support ('post-formats', масив ('в сторону', 'аудіо', 'образ', ​​'відео')); 

    [Джерело: WP Engineer]

    7. Показувати мініатюру публікації також у вікні редагування та огляду сторінки

    Версія WordPress 2.9 представила функцію розміщення повідомлення. Це досить приголомшливо, а для показу мініатюри повідомлень також у вікні редагування публікацій та сторінок можна вставити наступний код у плагін або скопіювати їх у functions.php файл теми.

     if (! function_exists ('fb_AddThumbColumn') && function_exists ('add_theme_support')) // для повідомлення та сторінки add_theme_support ('post-thumbnails', масив ('post', 'page')); Функція fb_AddThumbColumn ($ cols) $ cols ['thumbnail'] = __ ('Ескіз'); return $ cols;  функція fb_AddThumbValue ($ column_name, $ post_id) $ width = (int) 35; $ height = (int) 35; if ('thumbnail' == $ column_name) // ескіз WP 2.9 $ thumbnail_id = get_post_meta ($ post_id, '_thumbnail_id', true); // зображення з галереї $ attachments = get_children (масив ('post_parent' => $ post_id, 'post_type' => 'вкладення', 'post_mime_type' => 'зображення')); if ($ thumbnail_id) $ thumb = wp_get_attachment_image ($ thumbnail_id, масив ($ width, $ height), true); elseif ($ attachments) foreach ($ attachments як $ attachment_id => $ attachment) $ thumb = wp_get_attachment_image ($ attachment_id, масив ($ width, $ height), true);  if (isset ($ thumb) && $ thumb) echo $ thumb;  else echo __ ('None');  // для повідомлень add_filter ('manage_posts_columns', 'fb_AddThumbColumn'); add_action ('manage_posts_custom_column', 'fb_AddThumbValue', 10, 2); // для сторінок add_filter ('manage_pages_columns', 'fb_AddThumbColumn'); add_action ('manage_pages_custom_column', 'fb_AddThumbValue', 10, 2);  

    [Джерело: WP Engineer]

    8. Створіть власні повідомлення про статус публікації в admin

    Ця настройка спочатку була написана розробником як спосіб для клієнта відображати власні повідомлення для кожного повідомлення, створеного автором. У цьому випадку повідомлення може мати повідомлення як відхилено, помилка, джерело, остаточний, Ви можете змінити повідомлення трохи нижче коментаря коду, Масив повідомлень про статус користувача, просто щоб переконатися, що ви змінили імена класів також, які ви можете змінити після коментаря, змінити колір повідомлень нижче.

     add_filter ('display_post_states', 'custom_post_state'); функція custom_post_state ($ states) глобальна $ post; $ show_custom_state = get_post_meta ($ post-> ID, '_status'); if ($ show_custom_state) $ states [] = __ (''. $ show_custom_state [0]. '');  повернення $ станів;  add_action ('post_submitbox_misc_actions', 'custom_status_metabox'); функція custom_status_metabox () global $ post; $ custom = get_post_custom ($ post-> ID); $ status = $ custom ["_ status"] [0]; $ i = 0; / * ----------------------------------- * / / * Масив повідомлень про статус * / / * ----------------------------------- * / $ custom_status = масив ('Правопис', 'Огляд', "Помилки", "Джерело", "Відхилені", "Остаточні",); луна "
    '; луна "'; луна "
    '; add_action ('save_post', 'save_status'); функція save_status () global $ post; if (визначено ('DOING_AUTOSAVE') && DOING_AUTOSAVE) return $ post-> ID; update_post_meta ($ post-> ID, "_status", $ _POST ["status"]); add_action ('admin_head', 'status_css'); function status_css () echo '';

    [Джерело: WpSnipp]

    9. Встановіть максимальну довжину заголовка

    Додавання цього PHP коду до functions.php Файл вашого WordPress тема встановить максимальну кількість слів, які можуть бути відображені у вашій посаді, досить зручні налаштування!

     функція maxWord ($ title) global $ post; $ title = $ post-> post_title; if (str_word_count ($ title)> = 10) // встановити максимальну кількість слів wp_die (__ ('Помилка: назва вашої публікації перевищує максимальне число слів.'));  add_action ('publication_post', 'maxWord'); 

    [Джерело: WpSnipp]

    10. Як змінити шрифт редактора WordPress

    Ненавидіти поточний шрифт, який використовується в редакторі WordPress? Можна змінити на сучасні шрифти, такі як Монако або Consolas, просто вставте код у тему WordPress functions.php файл.

     функція change_editor_font () echo ""; add_action (" admin_print_styles "," change_editor_font "); 

    [Джерело: shailan.com, через WpRecipes]

    11. Додавання користувацького поля автоматично до публікації повідомлень / сторінок

    Фрагмент коду для автоматичного встановлення користувацького поля на сторінку або публікацію, коли вони опубліковані. Ви можете просто додати код нижче functions.php файл, що знаходиться в папці теми. Звичайно, не забудьте змінити ім'я спеціального поля.

     add_action ('publish_page', 'add_custom_field_automatically'); add_action ('publication_post', 'add_custom_field_automatically'); function add_custom_field_automatically ($ post_ID) глобальний $ wpdb; if (! wp_is_post_revision ($ post_ID)) add_post_meta ($ post_ID, "ім'я поля", "користувацьке значення", true);  

    [Джерело: wpCanyon]

    12. Позбавтеся від невикористаних поштових змін

    Тут з'являється дуже зручний запит SQL, який видаляє всі ревізії повідомлень миттєво, а також пов'язані з ним мета. Ви повинні запустити наступний запит у вашій базі даних WordPress, і всі виправлення (а також мета пов'язані з ним) будуть видалені з вашої бази даних. Важливе зауваження тут, не забудьте зробити резервну копію бази даних, перш ніж запустити код.

    DELETE a, b, c FROM wp_posts a WHERE a.post_type = 'revision' LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id); 

    [Джерело: Lesterchan.net]

    13. Зміна довжини виписки залежно від категорії

    Коли-небудь хотіли змінити довжину витягів на основі якої категорії ви знаходитесь? Тут приходить код, який задовольняє ваше бажання. Просто вставте код у свій functions.php і не забудьте змінити ID категорії на лінії 3!

     add_filter ('excerpt_length', 'my_excerpt_length'); функція my_excerpt_length ($ length) if (in_category (14)) return 13;  else return 60;  

    [Джерело: WpRecipes]

    14. Вимкніть автоматичне збереження повідомлень

    Якщо з певної критичної причини ви хочете вимкнути функцію, яка автоматично зберігає вашу публікацію під час редагування її на інформаційній панелі, це можливо. Просто відкрийте свій functions.php надішліть файл у файл:

     function disableAutoSave () wp_deregister_script ('autosave');  add_action ('wp_print_scripts', 'disableAutoSave'); 

    [Джерело: WpRecipes]

    Після цього файл можна зберегти, а WordPress ніколи не буде автоматично збережено. Ви також можете отримати функцію назад, видаливши код.

    Більше

    Шукаєте більше речей для налаштування WordPress? Ми отримали більше для вас!

    • WordPress: 30 корисних трюків і хакі
    • WordPress: ще 30 трюків і хакі
    • WordPress: 40 трюків і хакі