サポート » 使い方全般 » 記事本文を変数に代入して、コンタクトフォームへ渡す

  • Naoki-Jo

    (@naoki-jo)


    記事から、タグやカテゴリを取得して、変数に代入し、コンタクトフォームへその値を代入することは出来ているのですが、本文を取得して、変数に代入してコンタクトフォームに渡そうとしてもうまくいきません。

    タグの値を取得して、URLに値を入れて、コンタクトフォームをここから開いたときに、タグの名前が入力された状態で開くようにしています。

    同じように、記事の内容を取得して、URLにいれて、コンタクトフォームを開いたときに、任意のテキストボックスに、テキスト(この場合は記事の内容)が入力された状態で開かせたいのですが、うまくいきません。

    <?php
    $posttags = get_the_tags();
    $count=0;
    if ($posttags) {
    foreach($posttags as $tag) {
    $count++;
    if (2 == $count) {
    $tag_id= $tag->name.'';
    }
    }
    }
    ?>
    
    <?php $naiyou_content=the_content();?>
    
    <a href="http://〇〇〇〇〇?tag_name_2=<?php echo $tag_id;?>&naiyou=<?php echo $naiyou_content;?>">テスト</a>

    functions.php には次のように書かれています

    function my_form_tag_filter($tag){
      if ( ! is_array( $tag ) )
      return $tag;
    
      if(isset($_GET['tag_name_2'])){
        $name = $tag['name'];
        if($name == 'tag_name_2-form')
          $tag['values'] = (array) $_GET['tag_name_2'];
      }
    
    if(isset($_GET['naiyou'])){
        $name = $tag['name'];
        if($name == 'naiyou-form')
          $tag['values'] = (array) $_GET['naiyou'];
      }
    
      return $tag;
    }
    add_filter('wpcf7_form_tag', 'my_form_tag_filter', 11);
    <?php echo $naiyou_content;?>

    とすると、ちゃんと内容が出力されます。

    原因がわかりません。

    よろしくお願いします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • URL に使用可能な文字数に制限があるようです。
    [IE]最大 2,083 文字

    本文を値としてURLに渡しているので、文字数が多すぎるのではないでしょうか?

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「記事本文を変数に代入して、コンタクトフォームへ渡す」には新たに返信することはできません。