ページ毎のスキン表示がやりたいです。

Simplicityの特徴 フォーラム Simplicityについての質問 ページ毎のスキン表示がやりたいです。

  • このトピックには9件の返信、2人の参加者があり、最後にchanにより3年、 1ヶ月前に更新されました。
9件の返信スレッドを表示中
  • 投稿者
    投稿
    • #52964 返信
      chan
      ゲスト

      皆さん、こんにちは。

      Simplicityでページごとにスキン表示を操るカスタマイズ方法

      こちらの2.5.6の新バージョンのスキンのページ毎設定をやりたいので間違っている箇所があれば教えて下さい。
      紹介されているスキンファイルを解凍して、FileZillaで以下のサイトにアップロードしました。

      /chan-bike.com/public_html/wp-content/themes/simplicity2-child/skins

      wp-contentがpublic_htmlの下にしかなかったのですが、これで合っているでしょうか?

      次に以下のcssを子テーマのfunctions.phpに追加しました。

      function get_skin_file(){
        //特定の投稿でスキンを指定する(style.cssのURLを指定)
        if (is_single('flower-pop')) {//投稿スラッグでも可
          return 'https://chan-bike.com/public_html/wp-content/themes/simplicity2-child/skins/flower-pop/style.css';
        } elseif (is_single('simple-black')) {
          return 'https://chan-bike.com/public_html/wp-content/themes/simplicity2/skins/simple-black/style.css';
        } elseif (is_single('gingham-check')) {
          return 'https://chan-bike.com/public_html/wp-content/themes/simplicity2/skins/gingham-clean/style.css';
        } elseif (is_single('uc-mod')) {
          return 'https://chan-bike.com/public_html/wp-content/themes/simplicity-child2-simplicity/skins/uc-mod/style.css';
        } elseif (is_single('simple-ultramarine')) {
          return 'https://chan-bike.com/public_html/wp-content/themes/simplicity-child2-simplicity/skins/simple-ultramarine/style.css';
        } elseif (is_single('get_skin_file')) {
          return 'https://chan-bike.comchan-bike.com/public_html/wp-content/themes/simplicity2/skins/sky-pop/style.css';
        } else {//それ以外はスキンを適用しない
          return ;
        }
      }

      あとは、各ページにしておいて、カスタマイズ→スキンから選択する。
      で、何を選択しても変わらなくなりました。
      何処が違うのか、見る所を教えて頂けると幸いです。

    • #52969 返信
      chan
      ゲスト

      自己レスです。

      上の投稿のfunctions.phpを元に戻しました。

      カスタマイザーで、スキンを選択すると、それぞれのスキンになります。
      全体が変わってくれるのでアップロードはちゃんと出来ていると思って間違いないですよね。

      投稿番号で自分は設定しようと思います。
      スラッグを引数にすると、同一カテゴリーの記事だと、同じスキンを2回使えないと考えて良いでしょうか?

      Simplicity2バージョン: 2.5.6
      WordPress 4.7.5 (Simplicity2 child テーマ)
      https://chan-bike.com/
      その他に、必要な情報は何かありますか?

    • #52975 返信
      わいひらわいひら
      キーマスター

      いろいろ違います。
      条件分岐のis_single関数の使い方を検索して調べてみてください。
      よくわからない場合は、以下のように記事IDを指定した方が良いかと思います。IDの調べ方は、検索すると出てくると思います。

      function get_skin_file(){
        //特定の投稿でスキンを指定する(style.cssのURLを指定)
        if (is_single( 100, 777 )) {//投稿IDを指定する
          return 'https://wp-simplicity.com/wp-content/themes/simplicity2/skins/sky-pop/style.css';
        } else {//それ以外はスキンを適用しない
          return ;
        }
      }

      また、スキンのURLは、スキンを適用した状態で、ブラウザからソースコードを表示させて、URLをコピーしたものを利用してください。
      そういったURLには、ならないかと思います。URLは、ブラウザのアドレスバーに入力すると、CSSファイルが開くアドレスになるかと思います。

      通常は、同じカテゴリに数種類のスキンが使えないかと思います。

    • #53124 返信
      chan
      ゲスト

      わいひらさん、回答ありがとうございます。
      記事毎のスキン表示出来ました!

      トップページだけ、シックのスキンにしたのですが、それ以外の設定されていない記事もシックにしたいのですが、書き方がわからないです。
      最後のelseを false; に変えれば良いのでしょうか?

      function get_skin_file(){
      //特定の投稿でスキンを指定する(style.cssのURLを指定)
      if (is_home()) {
      return 'https://chan-bike.com/wp-content/themes/simplicity2/skins/chic/style.css';
      } elseif (is_single(' 756 ')) {//投稿スラッグでも可
      return 'https://chan-bike.com/wp-content/themes/simplicity2/skins/flower-pop/style.css';
      } else {//それ以外はスキンを適用しない
      return ;
      }
      }

      どうやっても、出来なかったので、必要部分だけのコピーにしました。

    • #53138 返信
      わいひらわいひら
      キーマスター

      トップページだけ、シックのスキンにしたのですが、それ以外の設定されていない記事もシックにしたいのですが、書き方がわからないです。

      申し訳ないですが、この部分が、ちょっとよくわからないです。
      もう少し具体的に詳しく説明していただいてよろしいでしょうか。
      「それ以外の設定されていない記事」というのはどういったページのことでしょうか。
      投稿ページとか、固定ページとか、もしくは全ページのことだとか、ページの種類で説明していただけると助かります。

    • #53150 返信
      chan
      ゲスト

      わいひらさん、お忙しい中、お世話になります。

      トップページだけ、スキンはif (is_home()) { を使って、シックにしてます。

      ロードバイクはやめられない

      上から、数記事はすべてスキンを設定しました。

      そこで、スキンを設定してないそれ以外の、全てのページ(投稿・固定)もスキンをシックにしたいのです。
      わかりにくい、文章でお手数おかけして申し訳ないです。

    • #53165 返信
      わいひらわいひら
      キーマスター

      とりあえずテーマカスタマイザーでスキンをシックに設定して、以下のように書けばいけるかも。

      function get_skin_file(){
        //特定の投稿でスキンを指定する(style.cssのURLを指定)
        if (is_single(' 756 ')) {
          return 'https://chan-bike.com/wp-content/themes/simplicity2/skins/flower-pop/style.css';
        } else {
          return get_theme_mod( 'skin_file', null );
        }
      }

      上記は、特定の投稿ページ以外は、テーマカスタマイザーの設定が適用されるコードの書き方です。

      もしくは、特定ページ以外をシックにするように書くとか。

      function get_skin_file(){
        //特定の投稿でスキンを指定する(style.cssのURLを指定)
        if (is_single(' 756 ')) {
          return 'https://chan-bike.com/wp-content/themes/simplicity2/skins/flower-pop/style.css';
        } else {
          return 'https://chan-bike.com/wp-content/themes/simplicity2/skins/chic/style.css';
        }
      }

      そこで、スキンを設定してないそれ以外の、全てのページ(投稿・固定)もスキンをシックにしたいのです。

      上記条件ならis_home()をあえて設定する必要はないのではないかと。

    • #53175 返信
      chan
      ゲスト

      わいひらさん、お忙しい中、回答ありがとうございます!

      両方とも、試してみて、get_theme_mod のcssのほうにしました。
      これなら、テーマカスタマイザーで変えられますもんね。
      問題解決です!

      もう一つ質問させて下さい。
      スキンの適用の順番なんですが
      Simplicityのスキン機能の仕様

      わいひらさんの記事によると、子テーマにあるスキンが最優先されるとのことなのですが、子テーマのstyle.cssにあるH2やH3の見出しとダブって表示されます。

      以下の記事がダブっているサンプルです。
      https://chan-bike.com/frank

      flowr-popは、元々親テーマに入っていたのですが、適応順番を考えて子テーマにコピーして試してみました。

      if  (is_single('732')) {//投稿スラッグでも可
      return 'https://chan-bike.com/wp-content/themes/simplicity2-child/skins/flower-pop/style.css';

      スキンの見出しを優先する方法を教えて頂けると助かります。

    • #53200 返信
      わいひらわいひら
      キーマスター

      申し訳ないですが、新しい内容の質問は、トピックを新たに立ててしていただけると助かります。

      1つのトピックにつき1つの質問を書いてください(複数質問があるときはトピックを分ける)

      初めての方は必ずお読みください

      その方が、同様の問題に行き当たってユーザーさんが検索で見つけやすいので。
      ご協力お願いいたします。

    • #53210 返信
      chan
      ゲスト

      わいひらさん、了解しました。

      実は、自分のサイトがスマホ表示になっていて、復旧するのに苦労してました。

      画面がまっしろけっけになったり、表示がおかしくなってもなんとか復旧出来るようになったので少しは進歩しているのかもしれないですが、そうならないようにするのが先決ですね^^;

9件の返信スレッドを表示中
返信先: ページ毎のスキン表示がやりたいです。
あなたの情報:




スポンサーリンク
アドセンス(大)
アドセンス(大)