Home > Article > Backend Development > Internship Summary 8: Create a new web page--add routing files
When creating a new web page, add the route of the web page to the corresponding global.php file and add the corresponding action to the controller.
Routing code:
<code><span>'cat-types'</span> => <span>array</span>( <span>'type'</span> => <span>'segment'</span>, <span>'options'</span> => <span>array</span>( <span>'route'</span> => <span>'/cat/:type_name/'</span>, <span>'constraints'</span> => <span>array</span>( <span>'type_name'</span> => <span>'[a-zA-Z0-9_-]+'</span> ), <span>'defaults'</span> => <span>array</span>( <span>'controller'</span> => <span>'Top10Inaction\Controller\index'</span>, <span>'action'</span> => <span>'catProducts'</span> ) ) ),</code>
catProductsAction code:
<code><span>public</span> function catProductsAction() { <span>$type_name</span><span>=</span><span>$this</span><span>-></span><span>params</span>()<span>-></span>fromRoute(<span>'type_name'</span>, <span>null</span>); <span>$sort</span><span>=</span><span>$this</span><span>-></span>getRequest()<span>-></span>getQuery(<span>'sort'</span>, <span>null</span>); <span>$industry</span><span>=</span><span>$this</span><span>-></span>getTypeCollection()<span>-></span>getIndustryByName(<span>$type_name</span>); <span>$subject</span><span>=</span><span>$this</span><span>-></span>getSubjectCollection()<span>-></span>getSubjectsByIndustry(<span>$industry</span>); <span>$type</span><span>=</span><span>$this</span><span>-></span>getTypeCollection()<span>-></span>getTypeByName(<span>$type_name</span>); <span>$display_name</span><span>=</span><span>$type</span><span>-></span>display_name; <span>$default_sort</span><span>=</span><span>array</span>(<span>'price'</span>,<span>'overall_score'</span>); <span>if</span>(<span>$this</span><span>-></span>isMobile()) { <span>$this</span><span>-></span>layout(<span>'layout/mobile'</span>); <span>$view</span><span>=</span><span>new</span> ViewModel(<span>array</span>( )); <span>$view</span><span>-></span>setTemplate(<span>'mobile/cat-products'</span>); <span>return</span><span>$view</span>; } <span>else</span> { <span>$product_groups</span><span>=</span><span>array</span>(); <span>if</span>(<span>!</span>(in_array(<span>$sort</span>, <span>$default_sort</span>))) { <span>$sort</span><span>=</span><span>'overall_score'</span>; } <span>$sortby</span><span>=</span><span>array</span>(<span>$sort</span><span>=></span><span>-</span><span>1</span>); <span>$condition</span><span>=</span><span>array</span>(<span>'type_name'</span><span>=></span><span>$type_name</span>); <span>$products</span><span>=</span><span>$this</span><span>-></span>getProductCollection()<span>-></span>getPaginator(<span>'product'</span>, <span>array</span>( <span>'condition'</span><span>=></span><span>$condition</span>, <span>'sortby'</span><span>=></span><span>$sortby</span>, )); <span>$products</span><span>-></span>setItemCountPerPage(<span>0</span>); <span>$totalItemCount</span><span>=</span><span>$products</span><span>-></span>getPages()<span>-></span>totalItemCount; <span>$view</span><span>=</span><span>new</span> ViewModel(<span>array</span>( <span>'type_name'</span><span>=></span><span>$type_name</span>, <span>'products'</span><span>=></span><span>$products</span>, <span>'industry'</span><span>=></span><span>$industry</span>, <span>'subject'</span><span>=></span><span>$subject</span>, <span>'totalItemCount'</span><span>=></span><span>$totalItemCount</span>, <span>'display_name'</span><span>=></span><span>$display_name</span>, )); <span>$view</span><span>-></span>setTemplate(<span>'index/cat-products'</span>); <span>return</span><span>$view</span>; } }</code>
The content in $view->setTemplate above is the cat-products.phtml file that needs to be created, and the layout and the like are written in it.
The above are the specific steps for creating a new web page.
Copyright Statement: This article is an original article by the blogger and may not be reproduced without the blogger's permission.
The above introduces the eighth internship summary: creating a new web page-adding routing files, including aspects of the content. I hope it will be helpful to friends who are interested in PHP tutorials.