2013-05-16 97 views
0

有什麼方法可以在buddypress中創建自定義/條件註冊/配置文件字段。 我試着用谷歌搜索了很多,但我沒有得到適當的解決方案。 我在想什麼的條件是:Buddypress條件配置文件字段

我想創造2/3的下拉列表中,想,如果一日一包含車輛類型(汽車,自行車),然後 第二個下拉的選擇應根據改變什麼用戶正在下拉選擇1.

任何幫助,將不勝感激。 感謝提前一噸。 :-)

回答

0

目前沒有工作插件或黑客的。我在一些網站上看到了這樣的事情 - 但是這是通過JavaScript和大量修改註冊頁面源代碼來完成的。

+0

是的,我來到了相同的結論。但是我想要的是,如果有人能夠引導我一些關於是否可以通過某些修改並添加幾行代碼。 – 3ncrypter

0

除非您觸摸register/resgistration.php源代碼,否則它會有點棘手。 你可以這樣做,如果你不熟悉jQuery。 即使世界在BuddyPress的登記表的隱藏字段(ID「signup_profile_field_ids」),告訴服務器在登記表哪些領域,它看起來像那場

<input type="hidden" name="signup_profile_field_ids" id="signup_profile_field_ids" value="5,11,1,10,32"> 

值包含在報名表的字段ID。

現在,您需要選擇一個父字段來顯示條件字段。你需要知道的家長和條件字段IDS

現在使用jQuery代碼

<script type="text/javascript"> 
    $(function(){ 
    var childs = new Array("Child id 1","Child id 1"); // your child fields ids 
    var options = new Array("Car","Bike"); // your parent field options, notice option and child number is same, which means, one child for one option 
    var parent = "Parent Field id"; // place you parent field id 
    var currentFields = new Array(); 
    currentFields = $("#signup_profile_field_ids").val().split(','); // take all current fields ids in an array 


    $.each(childs, function(index,value){ 
    $('#field_'+value).parent().hide(); // hide all child fields first 
    currentFields.splice(currentFields.indexOf(value),1); 
    }); 
    $("#signup_profile_field_ids").val(currentFields.join()); 
    $('#field_'+parent).after('<div id="conditional-fields-conteiner></div>"'); 
    $('#field_'+parent).change(function(){ 
     var option = $(this).val(); 
     var appendField = childs[options.indexOf(option)]; 
     var html = $("#field_"+appendField).parent().html(); 
     $('#conditional-fields-conteiner').html(html); 
     $.each(childs, function(index,value){ 
     currentFields.splice(currentFields.indexOf(value),1); 
     }); 
     currentField[] = appendField; 
     $("#signup_profile_field_ids").val(currentFields.join()); 
    }); 
    }); 
</script> 

這可能看似複雜,但是這是最簡單的方法。如果你正在計劃在會員網站,不要使用它。用戶可以簡單地通過編輯html來處理條件字段。

這也是一個插件,即將發佈。我正在開發它

http://rimonhabib.com/coming-up-next-buddypress-nested-conditional-fields/

相關問題