WordPress: заполните текстовый редактор другой записью в ‹blockquote›

Моя цель относительно проста, и у меня сложилось впечатление, что я могу добиться того, чего хочу, либо с помощью пользовательского типа сообщения, либо с фильтром, либо с тем и другим: я хочу разместить кнопки «цитировать» рядом с каждым сообщением, которые создают новый пост с помощью редактора. предварительно заполненный цитируемым сообщением, заключенным в теги. Я знаю, что могу создать функцию, которая изменяет фильтр default_content, но я думаю, что вместо этого мне следует передать настраиваемый тип сообщения (моя тема может генерировать ссылку, которая предоставляет post_ID сообщения, которое будет цитироваться)? Я просмотрел функцию add_filter(), не уверен, что я на правильном пути.


person Robert de Graaff    schedule 01.01.2018    source источник
comment
Я нашел в другом месте, что я должен использовать что-то похожее на это (извините за дрянное форматирование): function quote_a_post( $the_quoted_post, $post_id_derp ) { $the_post_to_quote = get_post( $post_id_derp); $the_quoted_post = "<blockquote>" + $the_post_to_quote->post_content + "</blockquote>"; return $the_quoted_post; } add_filter( 'quoted_post', 'quote_a_post' );   -  person Robert de Graaff    schedule 01.01.2018
comment
Не стесняйтесь отвечать на свой вопрос: stackoverflow.com/help/self-answer   -  person Hunter WebDev    schedule 02.01.2018
comment
Я уверен, что должен добавить фильтр для default_content, но в рамках этой функции фильтра я хочу получить определенный пост. Переменные сеанса не подходят, так как есть несколько сообщений, которые можно процитировать; когда срабатывает фильтр?   -  person Robert de Graaff    schedule 02.01.2018


Ответы (1)


После исследования я обнаружил, что функция фильтра, добавленная с помощью add_filter, срабатывает в контексте post-new.php, и я могу получить доступ к переменным, переданным через URL-адрес, используя $_GET[] для условного форматирования текста, которым я заполняю редактор.

person Robert de Graaff    schedule 03.01.2018