3

You can find the equivalent of Joomla! classes here: https://github.com/joomla/joomla-cms/blob/4.0-dev/libraries/classmap.php Your IDE will show when a method is deprecated in your code if you set as dependency the Joomla 4.0 git directory cloned locally. https://docs.joomla.org/Setting_up_your_workstation_for_Joomla_development#Installing_an_IDE_....


3

To your first question "how can I make Joomla acknowledge my joomla.asset.json changes without reinstalling extensions?" I think it is not right that you have to reinstall the extension after every change in the file joomla.asset.json. It is only necessary the first time you add the joomla.asset.json file. So that Joomla registers this file. So ...


3

When you say "display it into enqueuemessage" I'm assuming that you want to display it in the same message area that enqueueMessage displays in. You can do that in your javascript by calling Joomla.renderMessages(), which is a function in the Joomla core.js source file. The easiest way to get it to work is to use the JResponseJson class to handle the JSON ...


3

You should try to define the path with using Constants: $button->set('link', JPATH_ROOT . '/plugins/editors-xtd/insertmystuff/insert_mystuff/mystuffplugin_dialog.php?e_name=' . $name); or: $button->set('link', JPATH_SITE . '/plugins/editors-xtd/insertmystuff/insert_mystuff/mystuffplugin_dialog.php?e_name=' . $name); You can also try with: $button-&...


2

With Joomla core you need to setup a menu structure that will correspond to what you want to achieve with your URLs. Menus are important in Joomla. From the example of the URLs in your question - it seems like you have created a menu item for the article1. If you want all articles of that category (cat1) to be reachable under the cat1/article1,art2,art3 ...


2

use Joomla\CMS\Factory; Factory::getApplication()->triggerEvent('onBeforeRenderToolbar', array($settings)); This method can be used in 3.x too.


2

Unfortunately there is nothing like this for Joomla 4 yet. With all the amount of work that's gone into it, there's not a major amount of documentation yet. You can however use some other resources to help: Potential backward compatibility issues in Joomla 4 Pull Requests for Joomla 4 Joomla 4 Docs That said, as far as I'm aware, I don't believe there are ...


2

The way the event is invoked is slightly different for Joomla 4. You can use the following: $(document).on('subform-row-add', function(event) { console.log(event.detail.row); }); Or native ES6+ Javascript (preferred): document.addEventListener('subform-row-add', ({ detail: { row } }) => { console.log(row); });


2

As it is explained in core.js: instead of using getContent() method you should use: To get the current editor value: Joomla.editors.instances['jform_articletext'].getValue(); Where jform_articletext means the textarea id and you have to change that value if your textarea id is something else. So in your case it could be for example: let ...


2

MycomponentController class is missing the class prefix. It should be - namespace Example\Mycomponent\Libraries\Controller; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; class MycomponentController extends BaseController { public function __construct($config = [], MVCFactoryInterface $factory = null, $app ...


1

As far I am aware, feel free to correct me as I haven't played with Joomla 4 too much, the class naming conventions for controllers, models and views you need to use for Joomla to automatically resolve and load the related classes are the same as Joomla 3 and PSR/4 therefore your Controller and Model class name should be changed to class ...


1

I found the above problem solved after using Helix Ultimate 2 Beta 2 Quickstart Package (https://github.com/JoomShaper/helix-ultimate/releases/download/v2.0.0-beta.2/helixultimate_2_beta2_quickstart.zip). Here are the steps that I followed: Download the Helix Ultimate Quickstart Package at https://github.com/JoomShaper/helix-ultimate/releases/tag/v2.0.0-...


1

The component id may not be available yet; you might be able to retrieve it from the db, I did find my own extension in the extensions table at this step but haven't tried; that seems overkill anyways. Just add the menu and submenu items in the xml of the component, in the administration section, at the same level as files and folders something like this: &...


1

The Joomla 4 workflow allows you to replace the static states (unpublished, published, trashed and archived) with your own custom solution. When you assign a workflow to a category of articles, this would apply both to new and existing content. That said, you may have issues if the state of the existing article does not exist in the new workflow applied to ...


1

Since you kindly provided the link to the source files, I have downloaded your full Kunena package (6.0 dev.) (for Joomla 4.x.x dev.) just to give it a try and my short conclusion is the following: (well done for this extension, it looks good by the way!) As I wrote in my first comment I assumed that the problem is caused by the class name of the script ...


1

I found the answer finaly i greated an example on github for who is intrested: https://github.com/basd82/joomla_libarary


1

Ok, my bad… I forgot to put this code inside mod_xxxxx.php… if ($params->def('prepare_content', 1)) { PluginHelper::importPlugin('content'); $module->content = HTMLHelper::_('content.prepare', $module->content, '', 'mod_xxxxx.content'); }


1

Ok, this is a bit hack-ish, but it can work: Set article0 as a category itself, not as an article. Use the Category Description field to hold what you currently have as the article text. Set article1-100 as articles in the category. That way /article0 is the category (Blog or List) page, and the rest are /article0/articlex as articles within that category....


1

A MySQL DELETE query doesn't have a column value between keywords DELETE and FROM. There is also no benefit to declaring a table alias. owner is a mysql keyword, but not a RESERVED keyword, so it doesn't need to be backtick-wrapped. $db = Factory::getDBO(); try { $query = $db->getQuery(true) ->delete("#__mycomponent_user_posts") ...


1

The view is created from the code in ..\administrator\components\com_menus\views\item\tmpl starting with edit.php and your particular tab would be edit_modules.php I got there by decoding your URL, administrator/index.php?option=com_menus&view=item&client_id=0&layout=edit&id=101 and knowing it would be under /components and /tmpl It does ...


Only top voted, non community-wiki answers of a minimum length are eligible