0

誰かがフォームに入力するたびに電子メールのページ タイトルを取得するコードが chronoforms にあります。ただし、常に追加のデータを含むページ タイトルを取得しています。

例えば:

"Empodera tu ser con PNL - Fundación Empoder" 

を削除したい

" - Fundación Empoder"

でも答えが見つからない

<input type='hidden' name='page_url' id='page_url' value='<?php echo \JURI::getInstance()->toString(); ?>' />

<?php
     $jdoc = \JFactory::getDocument();
?>
<input type='hidden' name='page_title' id='page_title' value='<?php echo $jdoc->getTitle(); ?>' />

あなたが助けることができる場合は、前もって感謝します:D

ロドリゴ

4

3 に答える 3

1

このようなことをしたい場合は、探すことができるパターンが常にあることを確認する必要があります。たとえば、ダッシュが 1 つしかないことがわかっている場合は、次のようにできます。

<?php
$title_pieces = explode("-", $jdoc->getTitle());
 $title_pieces = count($title_pieces > 1) ? 
   array_pop($title_pieces) : $title_pieces;
$page_title = implode('-', $title_pieces);
?>
<input type='hidden' name='page_title' id='page_title' value='<?php echo $page_title; ?>' />

これを行うにはもっと良い方法があると思いますが、クロノフォームがこれを許可しない場合、これはハックな方法です。

于 2016-02-03T03:07:23.830 に答える
1

チェックアウトstr_replace():

$text = 'Empodera tu ser con PNL - Fundación Empoder';
echo str_replace(' - Fundación Empoder', '', $text); // "Empodera tu ser con PNL"

これはおそらく最も洗練された解決策ではありませんが、削除したい部分が一定であれば確実に機能します。それ以外の場合は、工夫を凝らしてパターン マッチングや正規表現などを調べる必要があります。

于 2016-02-03T02:58:27.987 に答える
0

皆さんがこのように解決してくれてありがとう

<input type='hidden' name='page_url' id='page_url' value='<?php echo \JURI::getInstance()->toString(); ?>' />

<?php
     $jdoc =  \JFactory::getDocument();
     $gettit =  $jdoc->getTitle();
     $alltrim = str_replace(' - Fundación Empoder', '', $gettit);
?>
<input type='hidden' name='page_title' id='page_title' value='<?php echo $alltrim; ?>' />

そして、それは定数です。これにより、必要なものが正確に削除されました...

ありがとうロドリゴ :D

于 2016-02-03T13:12:16.497 に答える