Sometimes either the button or the associated content does not show or is partially obscured by other items on the page. This is more likely if you place a button at the side of the window, but can happen anywhere on the page. The usual cause of such issues is the z-index.
Experiment with setting the z-index configuration option in the Button Design dialogue. In many cases it is simply a matter of setting it to 10 or 20. Sometimes to overlay blocks such as video or navigation elements you may need to set it as high as a few thousand.
Many of the blocks used with Button Nav do not have any default background. The default background is transparent and the background colour or image of the page or area shows through.
When these blocks are displayed in a dropdown, overlay or slide out, the same can happen to allow other items on the page to show through.
The solution is to provide a background. This can be set in the Button Design dialogue. With lightbox and slide out templates there are separate background colour options for the content and for a background overlay.
You can also use the regular Block Design dialogue to set a background colour, image, borders, padding and theme classes. By default, these are applied to the button and not to what is shown by the button. However, since v1.9.0 Button Nav has an option to move or copy block design into the content.
ConcreteCMS applies Block Design as a wrapper to the block, which means that by defaulty any block design will show about the button, not inside the button dropdown, slide out or overlay.
Since v1.9.0, Button Nav has an option to move or copy block design inside the button dropdown, slide out or overlay to wrap the actual content. Look for the select optioin at the bottom of the Button Design dialogue.
Blocks with button nav templates are rendered inline, just like any other block.
When a button is placed at the edge of the window, CSS is used as far as possible to handle the placement, but some aspects of this are necessarily done by JavaScript after the page has loaded. The consequence can be a flash of unstyled content (FOUC) for the block as the page loads.
There are two simple solutions to such problems.
You may also find this useful in association with the option to move Block Design inside.
Before version 1.9.0 of Button Nav, the placement of buttons to the left or right edges of the window was not accurate.
With Button Nav v1.9.0, the way window left/right edge placement is calculated has been improved to be an accurate percentage from the top of the window.
A consequence is that on sites upgrading to this version, any existing buttons placed on the left/right window edges will now appear accurately according to the percentage set, which may be lower than intended when the percentage was first set taking into account the inaccuracy!
If you only have a few buttons at window left/right edges, you can simply edit the Button Design to what you require.
If you have tens or hundreds of buttons, you are probably looking for an automated solution.
The MySQL queries below can be used to directly edit the button design in the database table. They can be applied with the MySQL command line or using the SQL option in phpMyAdmin. I strongly recommend taking a database backup before applying any manual SQL updates to your database.
You will most likely want to reduce the offset, so should apply the updates to smaller offsets first and work upwards. Otherwise you run the risk of applying multiple adjustments to the same button!
/* * To move all window left buttons from 25% to 20% * Adjust the percentages as necessary. * When applying a series of adjustments, start with the * smallest to avoid multiple application to the same * button */ UPDATE `JlNavButtonDesign` SET `behaviours` = REPLACE ( `behaviours`, '"btn-nav-window-left","placement_offset":"20"', '"btn-nav-window-left","placement_offset":"25"' ) WHERE `behaviours` LIKE '%btn-nav-window-left%'; /* * To move all window right buttons from 30% to 20% */ UPDATE `JlNavButtonDesign` SET `behaviours` = REPLACE ( `behaviours`, '"btn-nav-window-right","placement_offset":"30"', '"btn-nav-window-right","placement_offset":"20"' ) WHERE `behaviours` LIKE '%btn-nav-window-right%'; /* * To see all current button offsets */ SELECT `behaviours`, REGEXP_SUBSTR( `behaviours` , "_offset.+?([\d]+)" ) AS 'offset' FROM `JlNavButtonDesign` WHERE `behaviours` LIKE '%btn-nav-window-left%'; /* * To see what offsets are in use */ SELECT DISTINCT REGEXP_SUBSTR( `behaviours` , "([0-9]+)") AS 'offset' FROM `JlNavButtonDesign` WHERE `behaviours` LIKE '%btn-nav-window-right%';
What we mean here is an internal code exception in an addon or the core when you click the install button from the Add Functionality dashboard page or when you visit a page after installing an addon package.
If you experience such an issue, here are a few things you can check that may resolve the problem.
If you experience a code error on or immediately after install and need assistance, please use the Get Help link from the addon marketplace page to report the problem. On the Whoops report, click the [copy] button immediately below the error message. That will provide a stack trace you can paste into the help request and save time having to request that report later.
Perhaps you are unable to connect your site directly to the ConcreteCMS marketplace to install an addon or theme. This manual install or update process works for all addons and themes - not just mine.
The process is exactly the same for addons and themes, except themes have an extra step of activating the theme after installing.
Sometimes step 3 above can run out of PHP execution time. This is most likely when installing an addon or theme that installs a large amount of sample content. You should not run into such an issue with any of my addons or themes.
If you do run into such issues, you can run the install manually from the shell command line.
$ concrete/bin/concrete5 c5:package-install my_package_handle
or
$ concrete/bin/concrete5 c5:package-update my_package_handle
When updating, be sure to replace the previously installed package directory rather than adding to it. If not, you could end up accumulating obsolete debris from a previous version of the package. In general you should not uninstall - uninstalling will loose existing data and blocks. Just replace the /packages/_addon_handle_/ directory with the unzipped package update.
If you find yourself often needing to install or update many addons or themes manually, consider my Package Magic addon. Once Package Magic is installed, through the marketplace or manually, all further installs can be handled from the site dashboard using Package Magic. If you build custom code in packages, Package Magic can do a lot more. Package Magic can analyze package structure, zip up packages, upload and download zip files directly to various stores.