サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
トピックスターター 2025年2月3日 22:07
いつもお世話になっております。
カスタマイズ相談の案件かと思いましたが、判断がつかなかったため、こちらで質問させていただきます。
プロに依頼するかどうかを検討しております。
タイトルにある通り、投稿記事の更新履歴を誰でも閲覧できる状態にしたいです。
理想としては、レンタルwikiやWikipediaような差分付きの変更履歴を投稿記事ごとに設置したいです。
CSSの変更や、プラグインはあるのでしょうか?
そもそもワードプレスで可能なことか教えてください。
よろしくお願いいたします。
サイトURLです(広告があります)
https://overlordwiki.matrix.jp/
2025年2月3日 23:48
CSS変更でのカスタマイズは無理なように思います。プラグインもちょっと聞いたことはないですね。
カスタマイズする場合は、こんな感じで簡単なものならできるかと思います。Wikiみたいにするならさらなるカスタマイズが必要になるかと思います。
子テーマのfunction.php
function add_revision_history_to_content($content) { if (is_single()) { // 記事ページのみ表示 global $post; // リビジョンを取得 $revisions = wp_get_post_revisions($post->ID); if ($revisions) { ob_start(); // バッファリング開始 echo '<div class="revision-history">'; echo '<h2>変更履歴</h2>'; echo '<ul>'; // 最新リビジョンのIDを取得 $latest_revision_id = key($revisions); // リビジョンの一覧を表示 foreach ($revisions as $revision) { $date = get_the_date('Y-m-d H:i:s', $revision); $is_latest = ($revision->ID == $latest_revision_id) ? '(最新)' : ''; echo '<li>'; echo '<a href="?revision=' . $revision->ID . '">' . esc_html($date) . $is_latest . '</a>'; echo '</li>'; } echo '</ul>'; echo '</div>'; // 差分表示 if (isset($_GET['revision']) && is_numeric($_GET['revision'])) { $revision_id = intval($_GET['revision']); $revision = get_post($revision_id); if ($revision && $revision->post_parent == $post->ID) { $diff = wp_text_diff($revision->post_content, $post->post_content); if ($diff) { echo '<div class="revision-diff">'; echo '<h3>選択したリビジョンとの比較</h3>'; echo $diff; echo '</div>'; } else { echo '<p>このリビジョンとの違いはありません。</p>'; } } } $revision_content = ob_get_clean(); // バッファリング終了 // 記事本文の前に変更履歴を追加 $content = $content . $revision_content; } } return $content; } add_filter('the_content', 'add_revision_history_to_content');
子テーマのstyle.css
.revision-history { background: #f9f9f9; padding: 15px; margin-bottom: 20px; border-left: 5px solid #0073aa; } .revision-history h2 { margin-top: 0; } .revision-history ul { list-style: none; padding-left: 0; } .revision-history li { margin: 5px 0; } .revision-diff { background: #fff0f0; padding: 15px; border: 1px solid #ff9999; }
これに肉付けをしていけば詳細なものもできるかもしれません。ただ、あくまでカスタマイズ例なので、利用は自己責任でお願い致します。またカスタマイズはサポート外すので、詳しいサポートもできませんのでご了承いただければ幸いです。
この投稿は1時間前ずつわいひらに変更されました
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。