Всплывающие окна TinyMCE с использованием функций WP

В моем редакторе я хотел бы использовать всплывающее окно, созданное TinyMCE, для вставки в текстовую область некоторых сложных коротких кодов. Я использую TinyMCE API, чтобы показать всплывающее окно (внизу этого вопроса). Всплывающее окно – это PHP-файл внутри моей темы. Я бы хотел:

  1. Чтобы защитить этот файл от внешнего доступа ( if ( ! defined( 'ABSPATH' ) ) не работает).
  2. Используйте некоторые функции WP внутри этого всплывающего окна.

Что вы можете предложить?

Вызов API TinyMCE

 init : function(ed, url) { // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mcecax_webnews'); ed.addCommand('mcecax_webnews', function() { ed.windowManager.open({ file : url + '/dialog.php', width : 650 + ed.getLang('cax_webnews.delta_width', 0), height : 500 + ed.getLang('cax_webnews.delta_height', 0), inline : 1 }, { plugin_url : url, // Plugin absolute URL some_custom_arg : 'custom arg' // Custom argument }); }); [...] CUTTED 

Solutions Collecting From Web of "Всплывающие окна TinyMCE с использованием функций WP"

Всплывающее окно TinyMCE находится вне WordPress. Вы должны включить wp-load.php , тот же дескриптор, что и вне установки WordPress.

Но подумайте об этом решении и, возможно, чище, что вы создаете свои данные в строке json и обрабатываете эти данные во всплывающем окне. Полезно прочитать этот пост о включении od wp-load.php.

Здесь вы найдете Gist с примером, чтобы написать всплывающее диалоговое окно TinyMCE в WordPress, без включения wp-load.php . Автор также написал учебник , но только на немецком языке.

Также намек на этот вопрос WPSE об учебнике. Этот учебник создает всплывающее содержимое только с помощью javascript. Возможно, более безопасный и данные для дескриптора также будут передаваться через js в редактор.