Функция PHP и ошибка синтаксического анализа вывода HTML

Что-то не так с этим кодом, я не могу сделать это через … ситуация такова, что

измеритель сложности должен быть проверен, если он заполнен, выполнить смесь HTML и PHP. Я учусь PHP и застрял в этой функции …
Я использую WP и WPML для перевода, поэтому я добавляю -__e('Difficulty', 'projectname')': как строка Я получаю ошибку,

 Parse error: syntax error, unexpected 'tpage' (T_STRING), expecting ',' or ';' in /homepages/46/d448593520/htdocs/wp-content/themes/site/document.php on line 218

Мой полный код

<?php
// CHECK IF DIFFICULTY FIELD EMPTY
$diffcheck = get_post_meta($post->ID, 'wpcf-difficulty-meter', true);
if ( $diffcheck) {
echo "<ul class="tpage-list">
<li>'
-__e('Difficulty', 'projectname')':
'</li><li>'
types_render_field('difficulty-meter', array('output'=>'html','class'=>'tpage-difficulty'))
'</li></ul>";})

}
else {
// Show Nothing
}
// END
?>

-2

Решение

Подсветка синтаксиса показывает вашу ошибку: это проблема цитирования. Вы должны избегать двойных кавычек внутри вашей строки:

echo "<ul class=\"tpage-list\">

или используйте одинарные кавычки:

echo "<ul class='tpage-list'>
2

Другие решения

Чтобы завершить то, что сказал Джон Конде, эта часть не имеет смысла:

echo "<ul class="tpage-list">
<li>'
-__e('Difficulty', 'projectname')':
'</li><li>'
types_render_field('difficulty-meter', array('output'=>'html','class'=>'tpage-difficulty'))
'</li></ul>";})

Давайте пройдемся по нему:

// You have to keep track of concatenation. You started the string with ", you can't use it except to end string (or if you use \ like John Conde said)

// After the li: it seem like you wanted to add the value of the Difficulty thing, so you have to end your string and concaten it with a .

// Back to the strings and concaten it again to add the type render, since the string is now started with a ', I use a ' to end it
echo "<ul class='tpage-list'>
<li>".-__e('Difficulty', 'projectname').':</li>
<li>'.
types_render_field('difficulty-meter', array('output'=>'html','class'=>'tpage-difficulty'))
.'</li>
</ul>';

Я действительно не понимаю, почему у вас был}) в конце, поэтому я взял его

0

По вопросам рекламы [email protected]