Я создаю панель с настраиваемыми параметрами для моей темы, и одна из возможностей, которую я добавляю, - это изменение значка привязки местоположения на Картах Google для пользователей, которые используют тему Divi.
Это в основном кнопка включения / выключения, где в режиме «вкл.» Следует добавить следующий код в htaccess:
function my_htaccess_contents( $rules )
{
$my_content = <<<EOD
\n # BEGIN Changing Marker For Divi Users
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^wp-content/themes/Divi/includes/builder/images/marker.png$ somepath/marker.png [L]
</IfModule>
# END Changing Marker For Divi Users\n
EOD;
return $my_content . $rules;
}
add_filter('mod_rewrite_rules', 'my_htaccess_contents');
Работает нормально, но после переключения опции в положение ВКЛ, прежде чем она вступит в силу, я должен перейти к опции Постоянные ссылки и нажать кнопку сохранения - как я могу сделать так, чтобы постоянные ссылки перезаписывались автоматически при необходимости их сохранения?
Я немного погуглил и попытался добавить следующее:
...
add_filter('mod_rewrite_rules', 'my_htaccess_contents');
flush_rewrite_rules( $hard ); //nothing happens
...
add_filter('mod_rewrite_rules', 'my_htaccess_contents');
flush_rewrite_rules(); //nothing happens
...
add_filter('mod_rewrite_rules', 'my_htaccess_contents');
$wp_rewrite->flush_rules(true); //breaking page (I get 500)
Есть предложения о том, как этого добиться?
Кроме того, есть ли способ удалить добавленный контент, когда эта опция отключена на моей панели?