0

JavaScript とテキスト ウィジェットを使用して、AWeber サインアップ フォームをプライマリ サイドバーに埋め込もうとしています。ただし、[保存] をクリックすると、プログレス ホイールが永久に回転します。しばらくしてページを更新すると、コードが消えてしまいます。したがって、本当の問題は、私のコードがそこに貼り付けられたときに保存が機能しないことです。保存はテキストと html でほぼ瞬時に機能するので、javascript がすべてを支えていると思います。これまでこれで問題が発生したことはありません。問題なく保存できていました。これが私が保存しようとしているコードです。

<script type="text/javascript" src="http://forms.aweber.com/form/78/2041064078.js"></script>

WordPress を 3.4.1 から最新バージョン (3.5.2) にアップグレードしましたが、それでも同じ問題が発生します。

4

2 に答える 2

0

mod_securityが投稿を許可していないようです。.htaccess で無効にできる場合があります (こちらを参照してください: How can I disable mod_security in .htaccess file? )。

また、たとえば<div></div><script type="text/javascript" src="http://forms.aweber.com/form/78/2041064078.js"></script>.

または、テンプレートに直接ハード コードすることもできます。

于 2013-07-31T21:25:17.260 に答える
0

そのための最善の方法は、新しいウィジェットを作成することです。とても簡単です。基本的な構造は次のようなものです。

class MyWidget extends WP_Widget{

function MyWidget() {
    // Instantiate the parent object
    parent::__construct( false, 'name', array('description'=>'the description', 'classname'=>'class-name') );
}

function widget( $args, $instance ) {
    extract($args);

    echo $before_widget;
    echo '<h3>title</h3>';

            //do some logic here

    echo $after_widget;
}

function update( $new_instance, $old_instance ) {
    // Save widget options
}

function form( $instance ) {
    // Output admin widget options form
}
}

function my_init_widgets() {
    register_widget('MyWidget');
}

add_action( 'widgets_init', 'my_nit_widgets' );

それで全部です。たぶん、カスタムサイドバーを定義する必要があります。たとえば、次のようになります。

//init sidebar
add_action( 'widgets_init', 'sidebars_init' );

function sidebars_init(){
register_sidebar(
    array(
        'id' => 'default-sidebar',
        'name' => __( 'Default sidebar' ),
        'description' => __( "Generic sidebar" ),
        'before_widget' => '<div id="%1$s" class="widget %2$s">',
        'after_widget' => '</div>',
        'before_title' => '<h3 class="widget-title">',
        'after_title' => '</h3>'
    )
);

独自のウィジェットを定義する場合は、必要な JavaScript を追加できます。

于 2013-07-31T21:29:52.653 に答える