The right way to create a footer links area in Drupal - drupal

I've created a layout with "Panels" to replace my frontpage and I have some doubts about how to populate the different panes. All my websites until now are "blog-like" websites with a typical "CMS-blog" look-like and I'm not sure what's the "Drupalish" way of solving some problems...
I'm trying to create a footer with the typical columns of links, just like the one that you can see in the bottom of "www.drupal.org". I've created 3 panes in my layout, in the footer, to "host" those links: left-link-pane, center-link-pane, right-link-pane.
My doubt is about how to populate those 3 panes with the links without creating HTML blocks...
In a youtube video I found somebody that created 3 custom full-html blocks with CSS + ul + li + a tags. That works, but It doesn't seem the right way of doing thinks in drupal.
What's the right way of doing this?
I had an idea but I'm not sure if it's the right way to do it, or if somebody could suggest me how to do it:
In my panel layout, create 3 panes to host those links (links_left, links_center, links_right)
Create a vocabulary with 3 terms (tags) named Links_left, Links_center, Links_right
Create a new content-type named "FooterLinks" with title, body, link_text, link_url and weight.
Create for each pane a View. Example: for the left pane, a view getting all FooterLinks tagged as "Link_left" and sorting them by their "weight", linking to "link_url".
Use CSS Injector or a custom CSS file in the theme to give style to the results.
Maybe the above is not even possible to do with views... maybe it has to be done with "Menu entries"?
P.S. I found a module to create footers from the primary and secondary menus, but I can't control output and I would like to know how to do it.

The Drupal way would be to use Menus.
Your best bet would be to use the Footer Sitemap module.
It lets you choose which menu(s) to put in the footer. And then which of the links in each to display.
So you could use a mix of your primary navigation and secondary navigation menus or create a new menu.

Related

Create child page template based off book parent page in Drupal 7

I'm still learning Drupal, but I'm completely stuck at this point. I need to create a template for the child pages based off the navigation link clicked.
This grid is a Bootstrap thumbnail grid serving as a navigation menu. I want to know how to create a template page based off the parent navigation menu item. Each page will have the same format based off this menu.
It's unclear what you're trying to achieve, but as far as I can tell, you might need to start by trying to identify what those pages are and what parts they consist of (views, blocks/regions, nodes etc.) and then theme accordingly. Take a look at a diagram here https://www.drupal.org/docs/7/theming/overview-of-theme-files to get a better idea of how this all works together.
Once you know what you're dealing with, look for customization options. It can be anything from theme settings to views configuration, working with css, blocks, custom page/node templates (see here https://www.drupal.org/docs/7/theming/template-theme-hook-suggestions) etc.
If you need more info - please provide more detail, like links/screenshots of the pages that you need new templates for as well as explanation of how those 'templates' will need to look like
So basically once you choose The book menu item "Topics", you arrive to the topics page with the navigation menu (shown in the screen shot above).
When you choose one of the images in the thumbnail gallery (first screen shot), you are supposed to arrive to the child page for that menu item chosen (sub book page). All the sub book pages (are supposed to have the same format displayed in this basic sketch screen shot displayed below).
So for that, I am required to make a template for these sub book pages.
I just realized too that these sub pages would probably share the same parent of topic, so most likely, I have to create a template based off the action that "topics" = parent page ?
Screen shot of sub child page for topic chosen/ sub book page
thank you for your patience guys!
Okay, after working with my new partner, we discussed trying to create a view that will have headers:
<h1>**Topic Overview**</h1>
[user content input under title] <br><br>
<h1>**News and Initiatives**</h1>
[user content input under title] <br><br>
<h1>**Resources**</h1>
[displayed depending on tag chosen to display]
We just cant figure out how do we keep these headers constant, but allow the content to change, or be changed for every sub nav item (child page from nav menu above).

How to create a custom navigation bar (WordPress)

I have a requirement to create a custom navigation bar to replace the existing on a WordPress site. I have decent at CSS but have never come across something like this.
I have found multiple ways to remove the existing navigation bar so that is not a problem but adding the svg with links that are relative to the svg is.
The navigation bar is supposed to look something like this
navigation bar
I think you can approach this from two different angles.
1 - You don't want to/can't use PHP
You can create a custom menu through Wordpress' admin panel.
Add specifics classes to buttons (by activating CSS class property field on menu's buttons using "screen options" panel : ont the right top corner of the page).
Then you sould need 2 classes :
one class for the links on the first row (who/what/how)
another class for the link on the second row (contact)
and adjust de CSS rules to display links as you want.
Finaly I would display the "cloud" svg as the background of the whole menu.
The real problem is that wordpress will output all menu items as li in a ul, so maybe you should create 2 differents menu (one per row), and display the two menus in a dedicated container.
2 - You want/can/prefer to use PHP
This alternative takes advantage of Wordpress' Menu Walker by creating a custom walker extending it
The idea is that by customizing this PHP class you can specify how you want wordpress to render you menu(s) by defining the HTML output.
Here is some links to help you do that :
https://gist.github.com/kosinix/5544535
https://code.tutsplus.com/tutorials/understanding-the-walker-class--wp-25401
http://jamescollings.co.uk/blog/wordpress-custom-walker-output-section-of-menu/
Once you custom menu output is OK, you just need to customize the generated HTML though CSS.
Note: the second approach can be an adventure if you're not comfortable enough with PHP

How do I get blocks to display in Drupal 7?

I'm sure this is a very simple question, but I'm new to Drupal and haven't found a solution by the traditional methods of Googling and searching the Drupal home site, so please indulge me.
I've just installed Drupal 7 and am using the Bartik theme.
When I click Structure > Blocks there are a bunch of blocks at the bottom of the page which you can drag to a position corresponding to a region of the page template (Footer, Sidebar 1 etc).
However, when I assign a block to a region, whether by dragging, using the dropdown menu or using the configuration menu against the block, it does not save the assignation.
The block does not appear in the assigned region and when I return to the blocks page, those blocks are back at the bottom of the page, not assigned to a region.
The only blocks that I can make stick are ones that I create myself.
Can anyone point me in the right direction for a solution?
Thank you.
You wrote:
However, when I assign a block to a region, whether by dragging, using
the dropdown menu or using the configuration menu against the block,
it does not save the assignation.
It sounds as if you didn't click "save blocks" after assigning a block to a region - did you? There is a button on the bottom of the page - just below the blocks.

Is it possible to have a large image above the content node in Drupal?

I'm trying to replicate pages like the following using Drupal:
http://www.ams-neve.com/Products/Outboard/1073LB/1073LB.aspx
My problem is that I'd like the image at the top (which changes depending on which page you're on) to be part of the main content node, while the menu on the left is a sidebar region.
I'd like to have a 'product' content type where I can write the main copy, include linked files, etc. plus have a 'header image' which would be what appears at the top of the page.
I have the feeling that it can't be done like this because I'd essentially need bits of the node to be rendered into different blocks. If I theme the node template to wrap a div around the header image I can't figure out a way to have that moved to the top of the page and displace the left sidebar down.
Can anyone tell me if it's possible, or suggest an alternative route.
There are a lot of products so I need it to be a simple method.
The method I used was to create a Views Slideshow Block in Views. It pulled the header_image field from my node by looking at the page it was on. I put this block into the header of my page.
Anyone else looking at this should also check out Display Suite. You can do a lot of cool stuff with that.
if i'm not getting it wrong you are having problems with the default way in which drupal blocks work. Have you tried panels? It's an awesome plugin to work with drupal which let you create pages in a really flexible way.
You could have a custom field for your 'Product' content type that is an image or a text field to a URL for the header image. Just use CSS to place them where you'd like.
Alternatively, check out these links, I think they are what you are looking for.
http://drupal.org/project/headerimage
http://drupal.org/project/sections

drupal: adding simple links to a block

im using Views to output a block, containing latest post titles - simple and working. id now like to add some text links that should be different than the "more" link you can add through the Views UI. they are basically just p-tags with a-tags inside, pointing to a url of my choice.
right now i just inserted the markup in Basic Information > Footer > Full HTML.
is this the standard way of achieving what im after?
You can write custom templates for each row in a view if you want. Have a look at views 2 theming
Theming is a good way to do it but then it adds an additional responsibility to move the theme file when you move the view from one site to the other.
The header and footer are provided so that you can add html and php code to it, so it is definitely the right way to do it or else it would not have been provided in the first place by the module developer.
Also if the urls are related to the drupal site then I would suggest you to use php mode and add the link using l function (http://api.drupal.org/api/drupal/includes--common.inc/function/l/6)

Resources