我有问题我需要显示这样的位置:
-country
- 区域
---城市
-country
- 区域
---城市
我有国家和地区,但我不知道如何按地区显示城市。
这是我的代码:`
<?php if(osc_count_countries() > 0 ) { ?>
<div class="box location">
<h3><strong><?php _e("Location", 'bender') ; ?></strong></h3>
<ul>
<?php while(osc_has_countries() ) { ?>
<li><a href="<?php echo osc_country_url( array( 'sCountry' => osc_list_country_code() ) ) ; ?>"><?php echo osc_country_name() ; ?> <em>(<?php echo osc_country_items() ; ?>)</em></a></li>
<?php if (osc_country_name() =='Austria') { ?>
<ul>
<?php View::newInstance()->_erase('regions');
View::newInstance()->_exportVariableToView('regions', Search::newInstance()->listRegions('AT', '>') ) ;
if(osc_count_regions('AT') > 0 ) {
while(osc_has_regions('AT') ) { ?>
<li><a href="<?php echo osc_search_url(array('sRegion' => osc_region_name()));?>"><?php echo osc_region_name() ; ?> <em>(<?php echo osc_region_items() ; ?>)</em></a></li>
<?php } ?>
</ul>
<?php } ?>
<?php } ?>`
请帮帮我
答案 0 :(得分:0)
您是否看过文档中的助手?
https://doc.osclass.org/HLocation.php
与列表国家和地区非常相似:
<?php if(osc_count_countries() > 0 ) { ?>
<?php while(osc_has_countries()) { ?>
...
<?php } ?>
<?php } ?>
<?php if(osc_count_regions() > 0 ) { ?>
<?php while(osc_has_regions()) { ?>
...
<?php } ?>
<?php } ?>
但是:
<?php if(osc_count_cities() > 0 ) { ?>
<?php while(osc_has_cities()) { ?>
...
<?php } ?>
<?php } ?>
好的,这是完整的代码:
<?php if(osc_count_countries() > 0 ) { ?>
<?php while(osc_has_countries()) { ?>
<li><a href="<?php echo osc_country_url();?>"><?php echo osc_country_name() ; ?> <em>(<?php echo osc_country_items() ; ?>)</em></a></li>
<?php if(osc_count_regions() > 0 ) { ?>
<?php while(osc_has_regions()) { ?>
<li><a href="<?php echo osc_region_url();?>">-<?php echo osc_region_name() ; ?> <em>(<?php echo osc_region_items() ; ?>)</em></a></li>
<?php if(osc_count_cities(osc_list_region_id()) > 0 ) { ?>
<?php while(osc_has_cities()) { ?>
<li><a href="<?php echo osc_city_url();?>">--<?php echo osc_city_name() ; ?> <em>(<?php echo osc_city_items() ; ?>)</em></a></li>
<?php } ?>
<?php } ?>
<?php } ?>
<?php } ?>
<?php } ?>
<?php } ?>
这将加载所有国家&gt;&gt;区域&gt;&gt;像这样的城市:
国家/地区
国家/地区
... 这是一堆数据,取决于你有多少个城市。 因此,我建议您改用Ajax。
/index.php?page=ajax&action=cities®ionId =%
答案 1 :(得分:0)
我尝试使用此代码来自http://forums.osclass.org/general-help/get-'navigation'-to-show-cities-instead-of-region /
<ul>
<?php while(osc_has_list_regions()) { ?>
<li> <a href="<?php echo osc_update_search_url( array( 'sRegion'=>osc_list_region_name(), 'sCity'=>'' ) ); ?>"><?php echo osc_list_region_name(); ?></a> <em>(<?php echo osc_list_region_items(); ?>)</em>
<?php if ( osc_count_list_cities(osc_list_region_name()) > 0 ) { ?>
<ul>
<?php while( osc_has_list_cities() ) { ?>
<li> <a href="<?php echo osc_update_search_url( array( 'sRegion'=>osc_list_region_name(), 'sCity' => osc_list_city_name() ) ); ?>"><?php echo osc_list_city_name(); ?></a> <em>(<?php echo osc_list_city_items(); ?>)</em> </li>
<?php } ?>
</ul>
<?php } ?>
</li>
<?php } ?>
但是此代码显示了所有地区的地区和所有城市,显示地区及其城市仅包含项目......