Весь текст сохраняется правильно. Но после сохранения редактор отображает html-теги.
Взгляните на фотографии сначала, пожалуйста.
Экран для сохранения данных таможенного сообщения. Редактор WP правильно отображает полужирный текст.
befor saving screenWordpress пользовательский плагин. wp_editor() показывает html-теги после сохранения
экран после сохранения пользовательских почтовых данных. В редакторе wp отображается текст с тегами html вместо рендеринга.
after saving screen
Здравствуйте здесь плагин корень PHP
$post_type = 'company';
function company_admin() {
new InitCompanyAdmin();
}
function company_admin_save($company_id, $company) {
new SaveCompany($company_id, $company);
}
// show company. Was called from InitCompanyAdmin class
function display_company_meta_box($company) {
$companyMetaBox = new CompanyMetaBox();
$companyMetaBox->show($company);
}
// save company
add_action('save_post', 'company_admin_save', 10, 2);
add_action('admin_init', 'company_admin');
InitCompanyAdmin класс
class InitCompanyAdmin {
public function __construct(){
add_meta_box('edit_company_meta_box',
'Company Details',
'display_company_meta_box', // function inside plugin root php
Company::$postType, 'normal', 'high'
);
}
}
CompanyMetaBox Classпоказывает текст Wi го HTML-теги вместо визуализации
class CompanyMetaBox {
public function show($company){
$company_benefits = esc_html(get_post_meta($company->ID, 'benefits', true));
echo '<h1>Benefits</h1>';
wp_editor($company_benefits, 'benefits_editor', $settings = array() ); // shows text with html tags instead of visualization
}
}
после заставки
class SaveCompany {
private $companyId;
public function __construct($company_id, $company){
$isCompanyPostType = $company->post_type == Company::$postType;
if ($isCompanyPostType) {
$this->companyId = $company_id;
$this->saveBenefits();
}
}
private function saveBenefits(){
$benefits = $_POST['benefits_editor'];
if (isset($benefits) && $benefits != '') {
update_post_meta($this->companyId, 'benefits', $benefits);
}
}
}