Загадка
Я работаю над пользовательской темой WordPress. Я создал пользовательские типы записей и пользовательские таксономии, некоторые из которых имеют стиль тегов (а не стиль категорий). Все работает как надо, и соответствующие таксономии показывают, где они должны в своих соответствующих типах контента ('show_in_rest' => true
).
НО Я хотел бы добавить список существующих в настоящее время тегов к описанию в блок тегов.
В настоящее время инструкции для тегов гласят: «Разделяйте запятыми или вводите ключ». Я хотел бы добавить что-то вроде «Существующие теги», а затем список тегов. В идеале , это будет генерироваться динамически, чтобы при добавлении новых тегов клиентами обновлялся список. Для указанного c сайта, над которым я работаю, даже текст c будет лучше, чем ничего.
Что у меня так далеко
Я нашел кого-то, спрашивающего несколько схожий вопрос и попытался использовать код из одного из ответов. Я использую модульный подход, поэтому я поместил enqueue_script в отдельный файл php, который я require_once
-ing ...
В функциях. php, я имею получил:
...
require_once("lib/gutenberg/tag_options.php");
...
В tag_options. php У меня есть:
<?php
/**
* Add a list of available tags to tag panels in the gutenberg editor.
*/
function radicati_tag_options() {
wp_enqueue_script(
'gutenberg-tag-options',
get_stylesheet_directory_uri() . '/lib/gutenberg/tag_options.js',
['wp-blocks', 'jquery'],
1.0,
false
);
}
add_action('enqueue_block_editor_assets', 'radicati_tag_options');
И в tag_options. js У меня есть:
window.onload = function() {
// This is code I found on the internet,
// aimed at creating a custom panel...
var el = wp.element.createElement;
function customizeProductTypeSelector(OriginalComponent) {
console.log(OriginalComponent);
return function(props) {
console.log(props.slug);
// The slug of one of my custom tag-style taxonomies is "topic"
// That's what I'm seeing in console.log, so I feel like I might
// be on the right track!
// Once I get this figured out, if need be I can write custom code
// for each of my custom tag-style taxonomies :)
if (props.slug === "topic") {
return el("div", {}, "Product Type Selector");
HELP! THIS IS WHERE IT ALL FALLS APART!
I CAN *REPLACE* THE CONTENTS OF THE TAG BLOCK
(AND THUS RENDER IT NOT A TAGS BLOCK ANYMORE)
BUT I JUST WANT TO ADD A PARAGRAPH CONTAINING
SOME TEXT, INCLUDING A LIST OF EXISTING TAGS
TO THE OTHERWISE PERFECTLY FUNCTIONAL BLOCK!
} else {
return el(OriginalComponent, props);
}
};
}
wp.hooks.addFilter(
"editor.PostTaxonomyType",
"my-custom-plugin",
customizeProductTypeSelector
);
};
TIA
К сожалению, документация о том, как связываться с Гутенбергом, все еще довольно неоднозначна, так что это насколько я смог получить. Я признаю, что мой React одинаково отрывочен, так что это жалкая комбинация: смеется: Если у кого-нибудь из вас есть какие-то подсказки, которые я вам скажу, я буду очень признателен за вашу помощь!