1331628475 WP3.3.1でCustom-Smilies-SE 2.9.1 を使ってエモジを表示するようにプラグインをいれたのですが、写真のあるWPの管理画面に出る絵文字の並び順を変更することによってWPの新規画面で絵文字ををクリックするとPOPアップする部分の絵文字も並び順を変更できますか?


custom-smilies.php,genlist_post4wysiwyg.js.php等の画像ファイルが記載されている部分を変更してみたりしたのですが変化無かったのですが・・・。
画像ファイルは、初期の/wp-includes/images/smiliesの方に入れています。

画像を任意の順番に変更して表示する方法を宜しくご指導お願いします

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2012/03/13 17:47:57
  • 終了:2012/03/14 09:02:01

ベストアンサー

id:rouge_2008 No.2

rouge_2008回答回数594ベストアンサー獲得回数3512012/03/13 22:51:09

ポイント250pt

ポップアップする画面では、管理画面での表示と同じになっていますか?
違う場合は、まず先に「Update」ボタンをクリックして反映させてください。

表示する順番を変更する方法ですが、common.inc.phpの「cs_get_all_smilies()」を次のように変更します。

function cs_get_all_smilies() {
/* 
 * ここを削除してもいいですが、このように無効にしておくと後で簡単に戻す事ができます。
    if ($handle = opendir(clcs_get_smilies_dir())) {
        while (false !== ($file = readdir($handle))) {
            // no . nor ..
            if ($file != '.' && $file != '..') {
                $smilies[] = $file;
            }
        }
        closedir($handle);
    }
 * ここまで無効・または削除します。
 */
 // ※次のように配列に表示したい順番で画像名を指定します。
    $smilies = array(
        'icon_rolleyes.gif',
        'icon_question.gif',
        'icon_twisted.gif',
        'icon_redface.gif',
        'icon_eek.gif',
        'icon_surprised.gif'
    );
// 次は元からある記述です。
    return $smilies;
}



【追記】

コメントでの表示も同じにしたい場合は、同じファイルの「clcs_print_smilies()」を変更する必要があります。
分かりにくいかもしれませんが、次のように変更してみてください。

// print smilies list @ comment form
function clcs_print_smilies($comment_textarea = 'comment') {
?>
/* (~ 関係ない部分が長いので略 ~) */
<?php
    $smilies = cs_load_existing_smilies();
    $smilies_img = cs_get_all_smilies(); // この行を追加
    $url = clcs_get_smilies_path();
    $list = get_option('cs_list');            

    if ($list == '') {
	    //foreach ($smilies as $k => $v) { // この行をコメントアウトまたは削除
	    foreach ($smilies_img as $val) { // この行を追加
	        //echo "<img src='{$url}/{$k}' alt='{$v}' onclick='grin(\"{$v}\")' class='wp-smiley-select' /> "; // この行をコメントアウトまたは削除
            echo "<img src='{$url}/$val' alt='$smilies[$val]' onclick='grin(\"{$smilies[$val]}\")' class='wp-smiley-select' /> "; // この行を追加
	    }
    } else {


※「Display these smilies above the comment form by default:」の欄に、カンマ(,)区切りで任意の順番で「What to type」の文字列を入力すると、入力した順番で表示されます。
(この欄に指定した分だけ順番に初期表示されますが、「more >>」クリックで表示される残りのアイコンについては、管理画面の表示順とは関係ないようでした。)

id:dejavu888i

いつもありがとうございます。
毎度懇切丁寧に教えて頂いて感謝感謝でございます。

コメント欄も全ての並びが同じになり喜んでいます。
どうもありがとうございました。
また、宜しくお願いします。

2012/03/14 09:00:29

その他の回答(1件)

id:Cherenkov No.1

Cherenkov回答回数1503ベストアンサー獲得回数4932012/03/13 21:08:24

ポイント50pt

確認しましたが設定から順番を変える方法はないみたいです。
アイコンはファイル名のアルファベット順で表示されるようなのでファイル名に数字を入れるなどすれば任意の順番で表示させることができました。
変更は多少手間がかかります。

手順
  1. wp-includes/images/smilies のicon_evil.gifをicon_001evil.gifのように改名する。
  2. 設定を開き、"What to type"を指定してUpdateする。
id:dejavu888i

早速ありがとうございました。この方法でも確かに並べ替えできました。ありがとうございます。また、宜しくお願いします。

2012/03/14 08:57:30
id:rouge_2008 No.2

rouge_2008回答回数594ベストアンサー獲得回数3512012/03/13 22:51:09ここでベストアンサー

ポイント250pt

ポップアップする画面では、管理画面での表示と同じになっていますか?
違う場合は、まず先に「Update」ボタンをクリックして反映させてください。

表示する順番を変更する方法ですが、common.inc.phpの「cs_get_all_smilies()」を次のように変更します。

function cs_get_all_smilies() {
/* 
 * ここを削除してもいいですが、このように無効にしておくと後で簡単に戻す事ができます。
    if ($handle = opendir(clcs_get_smilies_dir())) {
        while (false !== ($file = readdir($handle))) {
            // no . nor ..
            if ($file != '.' && $file != '..') {
                $smilies[] = $file;
            }
        }
        closedir($handle);
    }
 * ここまで無効・または削除します。
 */
 // ※次のように配列に表示したい順番で画像名を指定します。
    $smilies = array(
        'icon_rolleyes.gif',
        'icon_question.gif',
        'icon_twisted.gif',
        'icon_redface.gif',
        'icon_eek.gif',
        'icon_surprised.gif'
    );
// 次は元からある記述です。
    return $smilies;
}



【追記】

コメントでの表示も同じにしたい場合は、同じファイルの「clcs_print_smilies()」を変更する必要があります。
分かりにくいかもしれませんが、次のように変更してみてください。

// print smilies list @ comment form
function clcs_print_smilies($comment_textarea = 'comment') {
?>
/* (~ 関係ない部分が長いので略 ~) */
<?php
    $smilies = cs_load_existing_smilies();
    $smilies_img = cs_get_all_smilies(); // この行を追加
    $url = clcs_get_smilies_path();
    $list = get_option('cs_list');            

    if ($list == '') {
	    //foreach ($smilies as $k => $v) { // この行をコメントアウトまたは削除
	    foreach ($smilies_img as $val) { // この行を追加
	        //echo "<img src='{$url}/{$k}' alt='{$v}' onclick='grin(\"{$v}\")' class='wp-smiley-select' /> "; // この行をコメントアウトまたは削除
            echo "<img src='{$url}/$val' alt='$smilies[$val]' onclick='grin(\"{$smilies[$val]}\")' class='wp-smiley-select' /> "; // この行を追加
	    }
    } else {


※「Display these smilies above the comment form by default:」の欄に、カンマ(,)区切りで任意の順番で「What to type」の文字列を入力すると、入力した順番で表示されます。
(この欄に指定した分だけ順番に初期表示されますが、「more >>」クリックで表示される残りのアイコンについては、管理画面の表示順とは関係ないようでした。)

id:dejavu888i

いつもありがとうございます。
毎度懇切丁寧に教えて頂いて感謝感謝でございます。

コメント欄も全ての並びが同じになり喜んでいます。
どうもありがとうございました。
また、宜しくお願いします。

2012/03/14 09:00:29

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません