web-dev-qa-db-ja.com

Wordpressにコードを埋め込む際のベストプラクティスは?

私は2つのブログサイトを持っています。 1つはWordpress.comでホストされ、もう1つはWordpress.orgで自己ホストされています

私たちは技術的な会社です、そして私たちのブログ記事の多くはHTML、Javascript、.NETなどに関するものであり、私たちは私たちの記事の中にコードスニペットを埋め込みたいです。

私たちは各ブログに約20人の著者を抱えています、そして経験から、私はコードスニペットを挿入することをできるだけ簡単でユーザーフレンドリーにする必要があります。


Wordpress.org
Wordpress.orgにとって、私はこの 記事 を見ました。
HTMLエディタで書くときに私が理解したことから、もしあなたがタグ<code> some code</code>を適用するなら、これはフォーマットを保存します。
- 大丈夫です。しかし、主な欠点は使いやすさです。たとえば、スタック交換テキストエディタと比較してみましょう。HTMLビューに切り替えてタグを書き込む必要はありません。「コードサンプル」ボタンを使用します。

私はそこに プラグイン の山があることを知っています。
wordpress.orgの投稿にコードを埋め込むための最良の方法について一般的なコンセンサスはありますか?

私の要件は、Stack Exchangeと同じくらい簡単であることです。


Wordpress.com
wp.comではコードタグ も使用できるようです。
このアプローチを使用するようにユーザーに指示することの利点は、両方のブログに貢献している著者と混同されないことを意味します。

私は現在、拡張ツールバー(キッチンシンク)からの 'フォーマット済み'のテキストフォーマットを使用していました。
他に選択肢はないと思いますか。

1
Simon

私はViper007Bondとautomatticが共著した SyntaxHighlighter Evolved を使うのが好きです。これは、多数の言語をサポートし、高度にカスタマイズ可能なAlex GorbatchevのJavaScriptベースのソリューションを使用しています。

4
Joseph Leedy

もう1つの方法は、コードスニペットを Gist に挿入し、 Embed GitHub Gist プラグインを使用することです。うまく機能し、あなたのコードはリビジョン管理されており、簡単にフォークできるという利点があります。

1
webaware

私はこのようなものを必要とし、20の関連プラグインのように試みました、そしてそれらはすべて何らかの方法で失敗しました。問題の大部分は、WPフィルタがコードで混乱していること(:)をスマイリーに変換する、またはrel="nofollow"をリ​​ンクに追加するなど)から発生します。

それで私は私自身の機能を作成することになった。基本的に、私はthe_content/comment_textの関数を最も優先度の高いものにフックします。この場合、PRE/CODEタグ間のすべてのコンテンツを<-- CODE 1 HERE -->のような一意のIDに置き換えます。

それから同じタグに別の関数をフックしますが、優先度の最も低いもの(すべてのWPフィルタがコンテンツに適用された後)で、上記のIDを変数に格納されているコードに置き換えます。

そのため、コードはフィルタによって変更されないままです。それから私は簡単なJavaScriptシンタックスハイライトスクリプトを実行します - 私は highlight.jsを選びました

あなたが望むなら私は私のコードを投稿することができます...

Stackexchangeは マークダウン を使用します。コードはhtmlタグではなく、ティックで囲まれます。とにかく、アイデアは変わりません

1
onetrickpony

Selfhosted:ショートタグ/ショートコード(ほとんどのプラグインがすでに行う予定)を作成するか、コードリソースのカスタム投稿タイプを作成することができます。投稿の編集画面が表示され、そこからスニペットを含むカスタム投稿タイプにリンクします。どちらの解決策も、おそらく大変な作業であり、よく書かれたプラグインを使用するのとほぼ同じです。

私のおすすめ:プラグインを使い続ける。

Ad <code>コードについて書いているなら、すでに基本的なhtmlに慣れているはずです(だから私はあなたのQを誤解していると思います)、とにかく<code>はインラインコード用で、<pre>は複数行コード用です。後者は改行を保存しますが、ルックアンドフィールはあなたのCSSスタイルに依存します。

0
kaiser

私が個人的な経験から追加することの1つ:

ある種のシンタックスハイライトを使用していない場合は、他の人に提供するコードを埋め込むときには注意が必要です。 <pre></pre>タグと<code></code>タグを使用するという両方の提案を試しました。それらはあなたのphpタグに追加のスペースを追加し、また一重引用符と二重引用符に悪影響を及ぼす可能性があります。あなたが突然怒っているユーザーでいっぱいのブログを持っていたならば、それは良くないでしょう。

他の人が使用するためのスニペットを提供することを計画している場合は、構文ハイライトを使用することをお勧めします。私は私の提案をするつもりだが、私は他の人たちが同様に使うものを聞きたいので、うまく行けば誰かが「チャイムイン」するだろう:Snipplr からのリンク (これにはサインアップする必要があります。それから、ここにあるWordPressプラグインを使用できます。 WPプラグインディレクトリへのリンク それが役立つことを願っています。

0
Jeremy Jared