I have PhpStorm and Joomla project. The names of tables in the database are not substituted from the database, since PhpStorm does not correctly substitute the prefix from the configuration file.
The problem was resolved by JetBrains Support.
It is necessary that:
The configuration file was located in the Joomla directory
That the catalog from Joomla was added to the External Libraries in Project's panel (left screen).
Related
I have a Joomla Website developed by giving work to freelancers.
It has many modules, plugins and components which were developed.
Now I want to develop another website on Joomla. I want to use those extensions but don't have the installation zip files.
Is there a way to export them or to create them by exporting some files. Id yes - then specifically how?
The question is different from Is it possible to export already installed component in joomla 2.5? as there they are just asking about exporting a component whereas here the exporting has to extend to plugins and modules as well.
There's a tool for that: GreenCape/extension-export, called Extension Exporter. It was written for and tested on Joomla 3.8. Unlike other tools, it takes the extensions manifest file into account (especially for folder names).
(Disclaimer: I wrote it)
To nibra's answer:
This is very nice, thank you for sharing.
Remarks:
after installation, I couldn't enable your plugin, needed to set the $filterForm variable public in InstallerViewManage.php line 64
I could export my component, then removed, but when tried to install it back, it missed the router.php file, which I did not have on administrator side, so I needed to remove it from the exported installation XML file.
After that I could install my component successfully, but language file was missing, because my component is in Hungarian and no English language file was set for it.
Also it would be nice to dump the database tables with the component so I didnt need to export/import separately.
So this will be a great tool after a little manual finetune.
Thank you!
I am developing a magento extension. After getting help from stackoverflow, I am able to create a package extension which is stored in [magento]/var/connect folder. I noticed that package.xml, myextension.xml and myextension-1.0.0.0.1.tgz files are created therein.
I created another magento instance locally where I want to load that package and test. It's not possible to get my extension verified by magento team and then use it quickly or is it? I copied those package files under /var/connect of the test instance but I cannot see that appear in admin-> system -> magento connect -> package extensions.
Any idea how I can do that? All I need is he ability to let my customer have my zip files(package files), then they will upload somewhere. Any help would be appreciated.
You can upload packaged Magento extension by going to:
System > Magento Connect > Magento Connect Manager
then uploading the package under the Direct package file upload section.
Furthermore, if you decide not to package your extension, just copy the working file structure of your extension to it's own folder, and you can simply drop your extension files into the working root directory of compatibility Magento installs. Just be sure your extension file structures are correct. EX: app/code/local/MyNamespace/MyExtension etc.
I'm using Magento 1.6. I've created my own theme (mytheme) under base.
So my file structure is app/design/frontend/base/mytheme
I could also develop my theme under app/design/frontend/default/mytheme
Which is best practice? And what are the implications of using base/mytheme rather than default/mytheme?
Cheers,
Eddie
I do disagree with the solution of Mr Storm.
ref: http://www.magentocommerce.com/knowledge-base/entry/magentos-theme-hierarchy
Those documents recommend You avoid to use the package default (as the base package too)
You have to creating Your own package 'mytheme' and to define a theme 'default'
ref: http://info.magento.com/rs/magentocommerce/images/MagentoDesignGuide.pdf
"Please ignore legacy Magento instructions and tutorials that instruct
you to create your custom theme inside of the default design package,
or to edit files in the default/default directory directly.
Rather,
the method that affords the best upgrade path for your theme and the
most protection from accidental changes is to create a new designpackage
and to create your custom theme inside of there."
So the correct answer is
app/design/frontend/your-package/default
Do NOT use:
app/design/frondend/default/your-theme
You don't want to put your theme in the base folder. The base folder is meant to contain the "core" theme that ships with Magento. It's the ultimate fall back, and the last place a file is looked for. It was specifically introduced to provide a place where core Magento developers could blow the entire directory away and replace everything (if need be)
To create a theme for Magento, you'll want to create a theme folder in your design package
app/design/frontend/default/mytheme
Then, in the admin go to
System -> Configuration -> Design
and enter mytheme in the Default field. Your theme will now the the "default" place Magento looks for files. If it doesn't find one, it will fall back on what it finds in the base folder.
I have created a new theme for magento.I want to submit it to the communtity.When i tried to package extension,I m getting The package data has been saved message,but there is no package in var/pear directory.Is it not possible to pack extension in localhost?Do you need more information?Any help would be appreciated.
Please see this article:- Magento: How to create extension package? (IMAGES)
Check if the data is filled correctly.
While creating your extension package, under Package Info -> Supported releases
If you have chosen "1.5.0.0 & later" then your extension package is stored in var/connect directory. This supports Magento connect 2.0.
If you have chosen "Pre-1.5.0.0" then your extension package is stored in var/pear directory. This is for Magento connect 1.0.
If you have selected both options, then the extension packages is stored in both places (var/connect and var/pear).
When uploading the 1.0 version from var/pear – Magento Connect will
make the 2.0 version for you. If you wish to only support 1.5 and
higher versions of Magento only then only upload the 2.0 file from the
var/connect directory to Magento. Source:
http://www.magentocommerce.com/wiki/7_-_magento_connect/packaging_a_magento_extension_in_1.5
Edit:
I tried to create a package with app/design and skin folder. It worked fine and I could see other folder and files in the package file inside var/pear.
I tested with default theme and default skin. In 'Contents' section, I kept like this:-
Target: Magento Theme Skin
Path: frontend/default/default
Type: Recursive Dir
Target: Magento User Interface
Path: frontend/default/default
Type: Recursive Dir
What version did you select for "Supported releases"? Check in the var/package/ folder too. Check both folders have user and group write access.
Packges are saved with a .tgz extension, so running
find . -name '*.tgz'
from the magento base folder is always a good way to find your packages.
Also, as of 1.5, Magento changed their package management system. This is why you had to choose a supported releases option. For 1.5 and later packages Magento will, by default, drop the files into
var/connect
The var/package folder is only used if you opt to create a pre 1.5 package.
I am currently developing a joomla 1.5 based site in a temp subdomain (which points to a subfolder on ther sever where all joomla stuff is installed). Currently I am using plugins joomgallery an kunene 1.0.9 (legacy mode).
Once the development is done I would like to move the whole site into the root directory and delete the whole subdomain. How would this ideally be done? Can I just move the files or is there more to it? Any common pitfalls to watch out for? E.g. Are there absolute paths referenced somehwere?
In your configuration.php file, the base path might be defined, something like this:
var $live_site = 'http://temp.mysite.com/';
...though I think by default now, it automatically detects this value for you.
Check in the configuration of your custom components to see if they have got the paths "hardcoded" in there too.
Another thing you could do is set up a .htaccess file with some RewriteRules so that any call to http://temp.mysite.com gets redirected to http://www.mysite.com
There is a free Joomla! extension for this called Joomlapack. Just make a backup with Joomlapack, move the backup files that was created to the new site/folder and run the script that also was created in the backup. Done!
Joomlapack makes a complete backup on both the DB and site files so you can move your site anywhere if you wanted. Joomlapack can be found here: http://www.joomlapack.net/
Make sure to edit your configuration.php file as per these instructions.