Intereting Posts
Плагин на всем сайте, кроме основного Два расположения столбцов с использованием Bootstrap get_terms, которые имеют настраиваемое липкое поле Пользовательская таксономия, ускользающая html attr Permalinks хорошо некоторые страницы, но 404 ошибка на других Получить идентификатор категории детей текущей категории Как отображать файлы изображений в виде ссылок? Запуск jQuery в плагинах Навигация по WordPress с родительским заголовком и дочерними страницами для детей Как интернационализировать WordPress – извлекать строки с текстовыми доменами, для каждого текстового поля отдельно WordPress: «ссылка на существующий контент» не отображает пользовательские типы сообщений Сообщения в боковой панели только по администратора Как разработать настраиваемое перенаправление URL-адресов wordpress multisite – обрабатывать базу данных Как обернуть содержимое виджета с помощью div или получить внешний вид виджета снаружи?

Добавление формата сообщения ссылки в тему и постоянную ссылку на rss-канал

Я добавляю формат сообщения ссылки в тематическую тему через дочернюю тему . Честно говоря, это первый раз, когда я делал какую-то тематическую работу с WordPress.

Мне удалось изменить постоянную ссылку на ссылку, на которую я ссылаюсь, и добавить символ в заголовок, чтобы кто-то понял, что может быть другое поведение. ( Пример сообщения )

Должен ли я использовать фильтры тематики, чтобы вытолкнуть эти изменения в тему или я должен использовать WordPress? Кроме того, как добавить постоянную ссылку в RSS-канал, чтобы люди могли комментировать мой сайт (так же, как Daring Fireball)

Я делал следующее в functions.php :

 /** * Override the post title logic */ function mikewillsthematic_thematic_postheader_posttitle() { if (has_post_format('link')) { $posttitle = '<h2 class="entry-title"><a href="'; $posttitle .= get_post_meta( get_the_ID(), "post_format_data", true); $posttitle .= '" title="Direct link to article" rel="bookmark">'; $posttitle .= '∞ '; $posttitle .= get_the_title(); $posttitle .= "</a></h2>\n"; } else { // Handle other post types. } return $posttitle; } add_filter('thematic_postheader_posttitle', 'mikewillsthematic_thematic_postheader_posttitle'); /** * Override the RSS URL */ function mikewillsthematic_rss_permalink($permalink) { global $wp_query; if($url = get_post_meta($wp_query->post->ID, 'post_format_data', true)) { return $url; } return $permalink; } add_filter('the_permalink_rss', 'mikewillsthematic_rss_permalink'); /** * Override the RSS title */ function mikewillsthematic_rss_title($title) { if (has_post_format('link')) { $posttitle = '∞ '; $posttitle .= $title; } else $posttitle = $title; return $posttitle; } add_filter('the_title_rss', 'mikewillsthematic_rss_title'); 

Но я чувствую, что это кажется … чрезмерным. Есть ли способ лучше?

Solutions Collecting From Web of "Добавление формата сообщения ссылки в тему и постоянную ссылку на rss-канал"

как самозанятый тематический гуру поддержки, я могу упростить свой первый фильтр:

 /** * Override the post title logic for post format 'link' */ function mikewillsthematic_thematic_postheader_posttitle($posttitle) { if (has_post_format('link')) { $posttitle = '<h2 class="entry-title"><a href="'; $posttitle .= get_post_meta( get_the_ID(), "post_format_data", true); $posttitle .= '" title="Direct link to article" rel="bookmark">'; $posttitle .= '&#8734; '; $posttitle .= get_the_title(); $posttitle .= "</a></h2>\n"; } return $posttitle; } add_filter('thematic_postheader_posttitle', 'mikewillsthematic_thematic_postheader_posttitle'); 

вы также можете попробовать проверить наличие мета URL, прежде чем вставлять его в ссылку. Я не думаю, что ваше решение выглядит чрезмерно. вы хотите изменить постоянную ссылку в 3-х местах, поэтому я не удивлен, что вам нужно 3 фильтра. что это не поведение по умолчанию для форматов ссылок, но я недостаточно разбираюсь в форматах сообщений, чтобы знать, почему именно так это сделал РГ.

afaik вы не можете фильтровать заголовок сообщения через WP. когда у вас есть решение (или раньше), пожалуйста, опубликуйте на тематических форумах :

Я выяснил правильные условия поиска и узнал, как добавить контент в RSS-канал .

 // Add permalink to RSS feed function mikewillsthematic_postrss($content) { if(is_feed() && has_post_format('link')) { $content = $content.'<p><a href="'.get_permalink().'">Permalink</a></p>'; } else { $content = $content; } return $content; } add_filter('the_excerpt_rss', 'mikewillsthematic_postrss'); add_filter('the_content', 'mikewillsthematic_postrss');