サポート » 使い方全般 » functions.phpの一部を共通化したい

  • 解決済 zilchr2

    (@zilchr2)


    functions.phpの一部を共通化して呼び出したいのですが、どのようにすれば実現可能でしょうか?
    できれば下記の「▼共通化したい▼」ところをfunctions.php内の別の関数を参照したいと考えています。

    function my_get_posts{
    
    ~その前の処理~
    
    ▼共通化したい▼
    $args = array('post_type' => 'post', 'numberposts' => 10,…)
    $posts = get_posts( $args );
    ▲共通化したい▲
    
    ~その後の処理~
    
    }

    やはり外部hoge.phpファイルを作成して、読み込むしかないのでしょうか?
    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • nobita

    (@nobita)

    こんにちは

    フィルタ、アクションを調べてみるといいと思います

    function my_get_posts(){
    
    	$posts = apply_filters('my_filter','');
    
    	return $posts;
    }
    
    add_filter('my_filter', 'my_default_function' );
    
    function my_default_function( $content ) {
    
    	$args = array('post_type' => 'post', 'numberposts' => 10,);
    	return get_posts( $args );
    
    }
    var_dump( my_get_posts() );

    トピック投稿者 zilchr2

    (@zilchr2)

    わかりやすい例をありがとうございます!
    apply_filtersとadd_filterをうまく使えば簡単にできるんですね。
    コードが一元管理でき、すっきりすることができました。

    なんとなく「オブジェクト指向のクラス化??」かもしれないと考え、JAVAの本を買って見始めたところだったので助かりました!!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「functions.phpの一部を共通化したい」には新たに返信することはできません。