サイトロゴの変更をスケジュール設定できますか?

検索してみましたが、見つかりませんでした。

一定期間だけサイトのロゴを自動的に切り替えるプラグインはありますか?ハロウィンやクリスマスにこうしたことをやっているサイトを見たことがあります。今月のプライド月間でも行いましたが、手動で行うしかありませんでした。

これに特化したプラグインは存在しませんが、このケースに使用できる home-logo-image-url という値変換器があります。したがって、次のような小さなテーマコンポーネントを作成できるかもしれません:

  1. シーズン別のロゴをテーマアセットとしてアップロード
  2. api.registerValueTransformer("home-logo-image-url", ...) を使用して、本日の日付が設定された期間内に含まれている場合はシーズン別のロゴURLを返すようにし、それ以外の場合はデフォルトのロゴを返す

これはテーマコンポーネントエコシステムに有用な追加となるでしょう! :slightly_smiling_face:

実際、少し試してみましたが:

テストしていただける場合は、期待通りに動作するかを教えていただけますか?その後、整理します。

おっと、素晴らしい!ありがとうございます!

ロゴの1つだけを切り替える方法はあるでしょうか?例えば、当サイトの仕組み(なぜそうなっているのかは分かりませんが、引き継いだものです)では、メインのロゴはテキストであり、それを切り替えることはありません。切り替えるのは小さなロゴのみです。

もちろん、回避策として、メインのロゴを全く同じ画像に置き換えることは可能ですが、それは少しハックのようなものです。追記:考えてみると、これは本当に理想的ではありません。もしメインのロゴが公式に変更された場合、そのコピーをコンポーネント内でも変更するのを誰かが覚えておく必要があります。

また、名称が少しずれているようです。サイト設定の最初のロゴは「メインロゴ」と呼ばれ、そのサブテキストは「サイトのトップナビゲーションに表示され、また、サイトのメール通知の上部にも表示されます」となっています。一方、プラグインでは「ロゴ」と表示され、そのサブテキストは「メインロゴ。ライトモードのデスクトップで表示されます」となっています。私が誤解している可能性は十分にあります。

どこを見るかによりますね。admin/logo 下では確かに「プライマリーロゴ」と表示されていますが、すべてのサイト設定ではそうではありません。

コンポーネントの設定はメインサイトとは独立しているため、同期されるわけではありません。ただ、mainprimary に更新しました。これは最近の追加だと考えています。

はい、確かに良いアイデアだと思います。唯一の欠点は、「任意」の選択を強制できないことなので、コンポーネントが機能するように少なくとも1つのロゴを設定するのは管理者の責任になります。

今、TCをここで公開しました: