我想添加一個動態下拉選擇列表上的變量產品,但foreach循環無法正常工作。出現選擇框,但它是空的。打印數組顯示正確的信息。我似乎錯過了一個國家問題或某事。Wordpress Woocommerce自定義下拉問題
希望的功能:每個用戶都有一個唯一的字符列表,他們需要能夠在此可變產品頁面上進行選擇。 (單個產品有幾個選項。)
此代碼在主題模板頁面上完美工作。 (childtheme)/testpage.php
它不適用於自定義woocommerce模板文件。地點:(childtheme)/woocommerce/variable/single-product/add-to-cart/variable.php
下面是代碼:
<?php
$clickedChar = $_GET['cc'];
$myChars = fyxt_myCharList ($fyxtAccountID);
?>
<html>
<select name="char_list" required>
<option value="">Select...</option>
</html>
<?php
foreach($myChars as $clist){
echo '<option value="'.$clist->idfyxt_character.'"'.(($clickedChar == $clist->idfyxt_character) ? ' selected="selected">' : '>').$clist->character_name.'</option>';
}
?>
<html>
</select>
</html>
就像我說的這個代碼工作完全在testpage。 PHP主題模板頁面。但不在woocommerce模板頁面上。它不是循環遍歷。
我也不得不調用WordPress用戶ID的問題而被迫包括
$current_user = wp_get_current_user();
具體哪個一般情況下不需要模板的頁面。我懷疑這裏有類似的問題。或者至少是解決問題的線索。
謝謝你的幫助和想法!
1.我認爲''元素不在您的實際代碼中,並且SO格式化出錯了? 2.你可以分享'fyxt_myCharList()'所以問題可以被複制? – helgatheviking
fyxt_myCharList()拉出了ID和Names的關聯數組。它運行良好。不知道爲什麼它可以在主題模板頁面上工作,但不能吸引模板頁面。但下面的鉤子很好地解決了這個問題。謝謝! – user1518699