Posts: 515
Threads: 21
Joined: Feb 2019
Quote:You don't want to reinvent the wheel - absolutely, everything is already done
@Riianna
You maybe surprised, but yes I fully agree with that. A good example source
where I search and find everything already done is here:
https://www.jqueryscript.net/ or here: https://www.cssscript.com/
and of course at github.
Posts: 515
Threads: 21
Joined: Feb 2019
I did not want to hijack this thread with UIKit,
sorry if I did.
Posts: 1,880
Threads: 82
Joined: Apr 2010
2020-07-13, 08:01:48
(This post was last modified: 2020-07-13, 08:02:50 by Oleg06.)
Google translated to me that a person cannot make a drop-down menu, I gave him some links to themes with examples of similar menus and not all of them use Uikit.
Posts: 535
Threads: 12
Joined: May 2013
I am also not a fan of one or the other framework. I think of it more like you Felix, and I always try to use the tools in an application specific way. I also agree with the opinion that it is better to use the "universal" tools as little as possible, and that an excessive use of these can not be really very efficient. But I am also convinced that with a careful use of CSS frameworks, they can provide really good work.
Posts: 35
Threads: 2
Joined: May 2019
2021-02-19, 16:07:48
(This post was last modified: 2021-02-19, 17:19:27 by celextel.)
We have installed I18N Plugin and we are using it for Hierarchical Menus.
We were seeing the following Error Messages after we changed the PHP Version to 7:
Code: [19-Feb-2021 10:33:13 Asia/Kolkata] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; I18nNavigationItem has a deprecated constructor in /home/xxxx/public_html/plugins/i18n_navigation/frontend.class.php on line 349
[19-Feb-2021 10:33:13 Asia/Kolkata] PHP Warning: count(): Parameter must be an array or an object that implements Countable in /home/xxxx/public_html/plugins/i18n_navigation/frontend.class.php on line 219
We are not getting any Error Messages after we did the following 2 changes to the frontend.class.php File as suggested earlier in this Thread:
1. Changed Line 219 From
Code: 'haschildren' => $showChildren ? count($children) > 0 : self::hasChildren($childurl, $show)
To
Code: 'haschildren' => $showChildren ? $children && count($children) > 0 : self::hasChildren($childurl, $show)
2. Added following empty __construct function Code to Line 350 after class I18nNavigationItem { at Line 349
Code: public function __construct() {}
Lakshmanan
Posts: 14
Threads: 0
Joined: Nov 2020
Hello mvlcek
with the menu get_i18n_navigation(return_page_slug(),0,9,I18N_SHOW_MENU) I cannot display the private pages
with the menu get_navigation(return_page_slug()) it works
how should I do to display a menu only to connected people
Posts: 14
Threads: 0
Joined: Nov 2020
(2021-03-12, 19:23:45)jjancel Wrote: Hello mvlcek
with the menu get_i18n_navigation(return_page_slug(),0,9,I18N_SHOW_MENU) I cannot display the private pages
with the menu get_navigation(return_page_slug()) it works
how should I do to display a menu only to connected people
no answer
there is someone
Posts: 515
Threads: 21
Joined: Feb 2019
Hello jjancel,
Mvlcek was back on the forum not so long ago. We missed the opportunity to ask him then.
His plugins are very import to the GS cms. It would be great if he would adapt his
plugins to php7,8.
Posts: 1,880
Threads: 82
Joined: Apr 2010
(2021-03-18, 23:18:44)Felix Wrote: Hello jjancel,
Mvlcek was back on the forum not so long ago. We missed the opportunity to ask him then.
His plugins are very import to the GS cms. It would be great if he would adapt his
plugins to php7,8.
I'm not sure if I did it right, but now it works on php7 without errors. https://getsimplecms.ru/i18n.zip
Posts: 14
Threads: 0
Joined: Nov 2020
Thank you
With php7.4.16
I tested https://getsimplecms.ru/i18n.zip
The plugin displays "Internationalize content based on slug / URL names. Do not update!"
but the private page menus are still not displayed
with "get_i18n_navigation(return_page_slug(),0,9,I18N_SHOW_MENU)"
with the menu get_navigation(return_page_slug()) it works
Posts: 515
Threads: 21
Joined: Feb 2019
I test on Laragon and on Uniform server.
What are you guys using for testing on php7 and 8 ?
Posts: 1,880
Threads: 82
Joined: Apr 2010
(2021-04-16, 23:57:01)jjancel Wrote: Thank you
With php7.4.16
I tested https://getsimplecms.ru/i18n.zip
The plugin displays "Internationalize content based on slug / URL names. Do not update!"
but the private page menus are still not displayed
with "get_i18n_navigation(return_page_slug(),0,9,I18N_SHOW_MENU)"
with the menu get_navigation(return_page_slug()) it works
Private pages are visible only to you.
Posts: 14
Threads: 0
Joined: Nov 2020
(2021-04-24, 19:16:53)Oleg06 Wrote: (2021-04-16, 23:57:01)jjancel Wrote: Thank you
With php7.4.16
I tested https://getsimplecms.ru/i18n.zip
The plugin displays "Internationalize content based on slug / URL names. Do not update!"
but the private page menus are still not displayed
with "get_i18n_navigation(return_page_slug(),0,9,I18N_SHOW_MENU)"
with the menu get_navigation(return_page_slug()) it works
Private pages are visible only to you.
Hello Oleg06
well no, that's the problem:
the title never appears in the i18n_navigation menu
Posts: 7
Threads: 0
Joined: Apr 2018
(2011-01-09, 06:07:56)mvlcek Wrote: Yesterday I installed GetSimple and didn't find support for multilanguage sites.
So I've created a plugin http://get-simple.info/extend/plugin/i18n/69/, which adds multilanguage support and hierarchical menus to your website.
The language is determined by the language in the user session (if previously set with the URL parameter "setlang") and the http accept language header. By using the URL parameter "lang" this can be overridden for the current request.
If you want to show the language in the URL, see here.
Installation
Copy i18n.php to your plugin directory, change the constant I18N_DEFAULT_LANGUAGE in i18n.php, and replace the following functions in your template(s):
- get_component with get_i18n_component
- get_navigation with get_i18n_navigation
Usage
To internationalize a page,
- create another page with the same slug/URL and the 2-letter language code separated by a "_" (e.g. for page "index" create another one "index_it" for italian),
- set its meta data, esp. the title and the menu text.
- The properties "parent page", "template" and "add to menu" are ignored, the properties of the base page (without language) are used instead.
The base page (without language) is assumed to be in the language specified as I18N_DEFAULT_LANGUAGE in i18n.php.
To use the internationalized hierarchical menu,
- ensure that the hierarchical structure of the base pages (without language) is set up correctly (property "parent page"),
- the "add to menu" property of the relevant base pages is checked,
- all language pages have at least the "title" property set,
- add to your template(s) "get_i18n_navigation(return_page_slug(), minlevel, maxlevel)", e.g.
- "get_i18n_navigation(return_page_slug(),0,0)" for your top level menu in the header, and
- "get_i18n_navigation(return_page_slug(),1,10)" for the remaining menu levels in the sidebar menu
- for a menu, which should only contain entries, which are available for the current language use "get_i18n_navigation(return_page_slug(),0,10,I18N_SHOW_LANGUAGE)"
- for a site map use "get_i18n_navigation(return_page_slug(),0,10,I18N_SHOW_PAGES)" (all pages, menu texts) or "get_i18n_navigation(return_page_slug(),0,10,I18N_SHOW_TITLES)" (all pages, titles) or "get_i18n_navigation(return_page_slug(),0,10,I18N_SHOW_MENU)" (only the pages visible in the menu).
get_i18n_navigation adds the following css classes to the list items:- slug of the page
- slug of the page's parent
- "current", if the page is the current page
- "currentpath", if the page is a parent, grandparent, etc. of the current page
- "open", if the page has children whose menu items are currently displayed
- "closed", if the page has children whose menu items are currently not displayed
If you want a one-level menu only, you have to make sure that all your base pages that are in the menu have "--- None ---" as parent.
Problem Solving
- Make sure your site URL in the GetSimple admin settings is correct - otherwise language switching might not work.
If, when visiting the site (with Chrome), the languages switches back to the default language, after you have switched to another language (with parameter setlang=...)- make sure that you have a favicon.ico on your site. Requesting favicon.ico MUST NOT return the GetSimple not-found page!
Posts: 36
Threads: 5
Joined: May 2015
Had a problem with activating GSCANONICAL and using a language dropdown (utilizing return_i18n_setlang_url($lang)) at the same time. The "setlang" url parameter vanished at redirecting when GSCANONICAL was set to 1.
I made a small, ugly hack in index.php to fix this for my site.
Original:
PHP Code: if (getDef('GSCANONICAL',true)) { if ($_SERVER['REQUEST_URI'] != find_url($url, $parent, 'relative')) { redirect(find_url($url, $parent)); } }
I replaced this with:
PHP Code: if (getDef('GSCANONICAL',true)) { $psetlang = (isset($_GET['setlang']))? '?setlang='.$_GET['setlang'].'' : ''; if ($_SERVER['REQUEST_URI'] != find_url($url, $parent, 'relative').$psetlang) { redirect(find_url($url, $parent).$psetlang); } }
Of course only useful when the parameter name "setlang" was not changed.
This works for me.
But I still wonder whether there might be a better solution without hacking index.php.
|