Перейти к содержимому

Как вести базу знаний WordPress

Эта страница фиксирует минимальный стандарт для новых материалов в wiki:

  • Четкий scope: одна страница = одна тема.
  • Краткое описание в frontmatter (title, description).
  • Внутренние ссылки только относительные Markdown-ссылки.
  • Примеры должны быть рабочими и проверяемыми.
  1. Опишите задачу в 2-4 предложениях.
  2. Добавьте рабочий пример PHP.
  3. Добавьте рабочий пример JS, если тема затрагивает фронтенд или редактор.
  4. Добавьте раздел “Связанные страницы”.

Ниже пример безопасного добавления обертки к контенту записи только в основном цикле.

add_filter('the_content', function ($content) {
if (!is_singular('post') || !in_the_loop() || !is_main_query()) {
return $content;
}
return '<section class="kb-content">' . $content . '</section>';
});

Что делает код:

  • Не изменяет контент в побочных запросах.
  • Работает только для одиночной записи типа post.
  • Возвращает исходный контент без побочных эффектов.

Пример показывает, как добавить служебный CSS-класс к core/paragraph в редакторе блоков.

wp.hooks.addFilter(
"blocks.getBlockDefaultClassName",
"wp-knowledge/paragraph-class",
function (className, blockName) {
if (blockName !== "core/paragraph") {
return className;
}
return className + " kb-paragraph";
},
);

Что делает код:

  • Проверяет тип блока до модификации.
  • Добавляет предсказуемый класс для дальнейшей стилизации.
  • Не затрагивает другие core-блоки.