WP_Queryでページングを行わないループ(トップページにニュースを5つだけ表示など)は、
'no_found_rows' => true
を設定する。
キャッシュプラグインWP Fastest Cacheを導入している場合、管理側でキャッシュをクリアしたいケースがある。
if (function_exists('wpfc_clear_all_site_cache')) {
//WP Fastest Cacheが有効化されている場合、キャッシュを削除する
wpfc_clear_all_site_cache();
};
オプションの値を変更する場合なら、
if (isset($_POST['option_name'])) {
$post_value = $_POST['option_name'];
if (is_array($post_value)) {
if (array_filter($post_value)) {
update_option('option_name', $post_value);
} else {
delete_option('option_name');
}
}
if (function_exists('wpfc_clear_all_site_cache')) {
wpfc_clear_all_site_cache();
};
}
こんな感じか。(get_optionの値が配列かつ値が空でなければオプション更新。空ならオプション削除)
余談・array_filterを第2引数なしで使用し、空要素を削除する場合多次元配列には対応していない。空判定に関しても値と相談。(参考)