サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
トピックスターター 2018年6月8日 12:00
わいひら様
お世話になっております。2回目の質問をさせていただきます。
<ブログURL>
婿養子の島根移住ブログ
https://wakuwaku-keigo.com/
<困りごと>
[ad]を手入力ではなく、自動で見出し2の1つ目と3つ目に表示されるように、functions.phpのカスタマイズを試みたが、以下の文言が出てファイルを更新できない。
致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。
<質問>
function.phpの更新ができるようにするためにはどうすればいいか教えていただけませんでしょうか?
<背景>
アドセンス広告がCocoonでは自動で好きな場所に表示できるのが嬉しい一方、どの場所に設置したものが効果が高いのかわからないという問題がありました。
また、本文中の見出し2の前(1つ目と3つ目のみ)に、アドセンス広告を追加しようと考えました。
しかし、手入力ではなく自動で挿入されるようにしたいと思い、以下を挿入したのですが更新ができませんでした。
// h2手前にAdSenseを自動挿入 Start
function adsense_before_h2($the_content) {
//1つ目の広告タグを挿入
$ad1 = <<< EOFスポンサーリンク
ここにAdSenseタグを貼ってください。
</div>
EOF;
//2つ目の広告タグを挿入
$ad2 = <<< EOF
EOF;
//3つ目の広告タグを挿入
$ad3 = <<< EOFスポンサーリンク
ここにAdSenseタグを貼ってください。
</div>
EOF;
//4つ目の広告タグを挿入
$ad4 = <<< EOF
EOF;
if ( is_single() ) {//投稿ページ
$h2 = '/^<h2.*?>.+?<\/h2>$/im';//h2見出しのパターン
if ( preg_match_all( $h2, $the_content, $h2s )) {//h2見出しが本文中にあるかどうか
if ( $h2s[0] ) {
if ( $h2s[0][0] ) {//1番目のh2手前に広告を挿入
$the_content = str_replace($h2s[0][0], $ad1.$h2s[0][0], $the_content);
}
if ( $h2s[0][1] ) {//2番目のh2手前に広告を挿入
$the_content = str_replace($h2s[0][1], $ad2.$h2s[0][1], $the_content);
}
if ( $h2s[0][2] ) {//3番目のh2手前に広告を挿入
$the_content = str_replace($h2s[0][2], $ad3.$h2s[0][2], $the_content);
}
if ( $h2s[0][3] ) {//4番目のh2手前に広告を挿入
$the_content = str_replace($h2s[0][3], $ad4.$h2s[0][3], $the_content);
}
}
}
}
return $the_content;
}
add_filter('the_content','adsense_before_h2');
// h2手前にAdSenseを自動挿入 End
以上です。
ご回答いただけましたら幸いです。
よろしくお願いします。
トピックスターター 2018年6月8日 14:00
ご回答ありがとうございます。
WordPressからは編集ができないんですね…
エックスサーバーからもできるでしょうか?
function.phpをいじると画面が真っ白になると聞いたこともあり不安があります。
2018年6月8日 15:12
エックスサーバーからもできるでしょうか?
操作方法は、エックスサーバーの公式サイトをご参考ください。
https://www.xserver.ne.jp/manual/man_tool_file.php
function.phpをいじると画面が真っ白になると聞いたこともあり不安があります。
誤ったコードを追加すると、真っ白になります。そのため、事前にテスト環境で試すのがおすすめです。
ただ、真っ白になったとしても、追加した誤ったコードを削除すれば元に戻ります。何も怖がる必要はありません。
また、 Cocoon は、 GitHub で公開されています。 子テーマの function.php の初期状態がすぐに分かるので、元に戻すのは簡単です。
わいひら reacted
トピックスターター 2018年6月8日 16:31
ありがとうございます!
挑戦してみます!!
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。
タイトルとURLをコピーしました