Это работает с CSS, но это хорошая практика?

Я пытаюсь включить динамический css в свой плагин, я искал где-нибудь, но не нашел случая, который похож на то, что я делаю. И что я использую, это добавить файл css непосредственно в конец моего php-файла плагина после закрытия php-тега ?> Без добавления каких-либо других продуктов, таких как вызов wp-head и т. Д.

Вот пример кода, который я поставил прямо в конец файла моего плагина:

 <style type="text/css"> .innertrow { background-color: <?php get_options('css_value');?>} </style> 

Это хорошая практика?

Вы можете использовать wp_add_inline_style () для добавления в таблицу стилей, которую вы уже определили, например, в вашем плагине. Таким образом, экран настроек или другие пользовательские настройки могут влиять на окончательный вывод стиля.

Это может стать очень утомительным, однако, в зависимости от того, сколько изменений вы даете пользователю власти. Насколько мне известно, это «лучшая практика».

Конечно, это не очень хорошая практика, поскольку WordPress будет восприниматься как ошибка плагина. Он выдает сообщение об ошибке при активации плагина следующим образом:

 The plugin generated xxx characters of unexpected output during activation. If you notice “headers already sent” messages, problems with syndication feeds or other issues, try deactivating or removing this plugin. 

Где xxx – количество кодов + пробелов, которые вы помещаете после тега ?> . Это то же самое, что локация пробелов / s или непринятых кодов перед первым <?php в вашем основном плагине и после него.

Я считаю, что можно динамически писать файл CSS с помощью PHP, но вам нужно будет узнать больше об этом, я не знаю много о нем сам. Я планирую сделать это в ближайшее время, поскольку я заметил, что люди вкладывают много CSS в тему, над которой я работал. Это плохая практика во многих отношениях, поэтому лучше всего избегать, когда это возможно. К сожалению, есть только 24 часа в день …!

Если вам нужно добавить динамический CSS и не иметь уже добавленную таблицу стилей, к которой вы хотите добавить ее, вы можете подключить ее и вывести ее в wp_head :

 <?php function wpse_111373_output_plugin_css() { ?> <style type="text/css"> .innertrow { background-color: <?php get_option('css_value'); ?>;} </style> <?php } add_action( 'wp_head', 'wpse_111373_output_plugin_css' ); 

Не добавляйте CSS в конец вашего файла плагина. Однако, поскольку это является «лучшей практикой», я не знаю. 🙂