1

だから私はワードプレスのインストールに wp-code-igniter プラグインを正常にインストールし、パーマリンクで実行するように設定しました:

\plugins\wp-code-igniter\wp-code-igniter.php

    // let's use CI a bit to recover our $_GET array
    // Nope, comment out the line below (#39)
    //$_SERVER['PATH_INFO'] = '/ci_mods/recover_get_array/'.$query_string;

\plugins\wp-code-igniter\ci\application\routes.php

    // Add this in to line 41
    $route['(:any)'] = "welcome/index/$1"; # this line is new!

これまでのところ、ワードプレスはパーマリンクをオンにしても再び機能するようになりました-しかし、テンプレート内でコードイグナイターを使用する方法がよくわかりません。テーマのindex.phpページの本文に次を追加してみました:

 <?php
 // Standard index.php for twentytwelve theme
  get_header(); ?>

<div id="primary" class="site-content">
    <div id="content" role="main">

 <?php
      // This is where I try to access the codeigniter functions
      $this->load->library('table');

      $data = array(
         array('Name', 'Color', 'Size'),
         array('Fred', 'Blue', 'Small'),
         array('Mary', 'Red', 'Large'),
         array('John', 'Green', 'Medium')
      );

      echo $this->table->generate($data);
 ?>


 <?php if ( have_posts() ) : ?>

<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
    <?php get_template_part( 'content', get_post_format() ); ?>
    <?php endwhile; ?>

    <?php twentytwelve_content_nav( 'nav-below' ); ?>

    <?php else : ?>

        <article id="post-0" class="post no-results not-found">

        <?php if ( current_user_can( 'edit_posts' ) ) :
            // Show a different message to a logged-in user who can add posts.
        ?>
            <header class="entry-header">
                <h1 class="entry-title"><?php _e( 'No posts to display', 'twentytwelve' ); ?></h1>
            </header>

            <div class="entry-content">
                <p><?php printf( __( 'Ready to publish your first post? <a href="%s">Get started here</a>.', 'twentytwelve' ), admin_url( 'post-new.php' ) ); ?></p>
            </div><!-- .entry-content -->

        <?php else :
            // Show the default message to everyone else.
        ?>
            <header class="entry-header">
                <h1 class="entry-title"><?php _e( 'Nothing Found', 'twentytwelve' ); ?></h1>
            </header>

            <div class="entry-content">
                <p><?php _e( 'Apologies, but no results were found. Perhaps searching will help find a related post.', 'twentytwelve' ); ?></p>
                <?php get_search_form(); ?>
            </div><!-- .entry-content -->
        <?php endif; // end current_user_can() check ?>

        </article><!-- #post-0 -->

    <?php endif; // end have_posts() check ?>

    </div><!-- #content -->
</div><!-- #primary -->

codeigniters 関数にアクセスするための簡単なテストですが、動作せず、ci コード実行の時点でページが壊れます - 誰でもこれを動作させる方法をアドバイスできますか?WordPress wp-code-igniter プラグイン

4

1 に答える 1

1

それを修正しました-テンプレートでcodeigniter関数を使用する前に、codeigniterオブジェクトを取得する必要があります-コードを次のように変更すると、どのワードプレステンプレートファイルでも機能します:

  <?php
  $ci = &get_instance();

  $ci->load->library('table');

  $data = array(
            array('Name', 'Color', 'Size'),
            array('Fred', 'Blue', 'Small'),
            array('Mary', 'Red', 'Large'),
            array('John', 'Green', 'Medium')    
  );
  echo $ci->table->generate($data);
  ?>
于 2013-06-11T14:39:09.203 に答える