Jump to content
benbyf

clean urls not working

Recommended Posts

Try 

<?php echo $pages->find('/about/')->url; ?>
<?= $pages->find('/about/')->url ?>
Edited by marcus

Share this post


Link to post
Share on other sites

@marcus...I think a get is better for a single page :-) no need for a find...

  • Like 1

Share this post


Link to post
Share on other sites

@marcus...I think a get is better for a single page :-) no need for a find...

Yep, you're right!

<?= $pages->get('/about/')->url ?>

Or, just iterate through the homepage's children. Or try MarkupSimpleNavigation. :)

Share this post


Link to post
Share on other sites

must be a config problem as i've changed the urls to the original:

$nav = $pages->get('/')->children();
          foreach($nav as $child){
}

which works on the homepage, but on a level up the urls go crazy again

Share this post


Link to post
Share on other sites

on this page http://www.owengildersleeve.com/new/ the Portfolio and About links work (as the other two link externally). where as on the About page the links go crazy.

$nav = $pages->get('/')->children();
          foreach($nav as $child){
            if($child->title=='Portfolio'){
              echo '<div><a href="'. $pages->get('/')->url .'">'. $child->title .'</a></div>';
            }else{
              echo '<div><a href="'. $child->url .'">'. $child->title .'</a></div>';
            }
          }

Share this post


Link to post
Share on other sites

could this be an apache / .htaccess issue, or some setting in config not right do you think?

Share this post


Link to post
Share on other sites

Define links go crazy.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By AndZyk
      Hello,
      I am currently building a intranet which will be hosted on the local network of a company. This intranet has many links to files on their fileserver with the protocol file://.
      So for example the links look like this file://domain.tld/filename.ext
      When I try to insert such a link into a URL field, I get the error, that only the protocol http:// is allowed. When I try to insert such a link into a CKEeditor link, it gets stripped out. Is it possible to insert such links into the FieldType URL and CKEditor.
      I know that I could use a FieldType Text or insert a RewriteRule in the .htaccess file, but I am looking for a more elegant solution. 😉
      Regards, Andreas
    • By Robin S
      Add Image URLs
      Allows images/files to be added to Image/File fields by pasting URLs.

      Usage
      Install the Add Image URLs module.
      A "Paste URLs" button will be added to all image and file fields. Use the button to show a textarea where URLs may be pasted, one per line. Images/files are added when the page is saved.
       
      https://github.com/Toutouwai/AddImageUrls
      https://modules.processwire.com/modules/add-image-urls/
    • By Guy Incognito
      Have read loads of similar threads but can't find the deifnitive answer. I'm bootstrapping ProcessWire into a Magento installation. Everything is working fine in terms of expected PW API functionality, however I cannot get the paths for images in the site work correctly.
      ProcessWire is installed in a subfolder called 'pw'.
      If I load the PW site directly e.g. visit mainsite.com/pw everything loads fine and all image paths are correct. If I load the parent site in the root folder with the PW bootstrapped page content rendered within it, the image paths don't contain the subfolder and so are broken. So I get
      https://mainsiteexample.com/site/templates/img/test.jpg instead of
      https://mainsiteexample.com/pw/site/templates/img/test.jpg I've tried updating the rewrite base in the .htaccess file but it doesn't seem to make any difference. Have also tried various settings in the config file to no avail. Wondering if rewrite base perhaps isn't working as intended because I'm behind a NGINX/Apache hybrid environment?
    • By stanoliver
      Hi! 
      The following code snippet is part of my markup simple navigation and the url_redirect (url field in the backend) just works fine when I put an special custom url into the url_redirect field.
      <?php $nav = $modules->get("MarkupSimpleNavigation"); // topnav $current = $page->rootParent(); // current root page // subnav echo $nav->render(array( 'max_levels' => 2, 'item_tpl' => '<h4><a class="g8-bar-item g8-hover-black" href="{url_redirect|url}">{title}</a></h4><hr class="sidenav">', 'collapsed' => true, ), $page, $current); ?>  In my seperated breadcrumb navigation I use the following code snippet
      <?php foreach($page->parents()->append($page) as $parent) { echo "<li><a href='{$parent->url_redirect|url}'>{$parent->title}</a></li>"; } ?> Now to the problem: In my first code snippet above the
      url_redirect|url 
      works just fine but when I try something similiar in the second code snippet
      $parent->url_redirect|url
      I produce an server error How do I have to change the second code snippet so that it works in the correct way as the first code snippet does?
    • By ajt
      Hello!
      I want to keep sort some pages in my page tree within a single parent, but then have the URLs for those pages ignore their topmost parent.
      So for example, if the page is at: [home]/buildings/architect-name/building-name
      I want the URL to be /architect-name/building-name
      I've search around the forum, and the solution that comes up everywhere is a version of the code from this post: 
      /** * This hook modifies the default behavior of the Page::path function (and thereby Page::url) * * The primary purpose is to redefine blog posts to be accessed at a URL off the root level * rather than under /posts/ (where they actually live). * */ wire()->addHookBefore('Page::path', function($event) { $page = $event->object; if($page->template == 'post') { // ensure that pages with template 'post' live off the root rather than '/posts/' $event->replace = true; $event->return = "/$page->name/"; } }); And I can use a version of that to successfully get buildings/architect-name to appear as /architect-name
      But /buildings/architect-name/building-name still appears as /buildings/architect-name/building-name
      Is there a way to get URLs to ignore/remove that topmost parent even when the page has a grandchild?
      Any help much appreciated!
×
×
  • Create New...