Phpstorm Magento 2

There is no doubt that Magento is a sophisticated platform but in order to get the most out of the robust platform, you need the right kind of tools and development for the system. With the help of Magento development tools, you are sure to get a robust website with ultimate performance and a stable server for Magento that can manage the whole load.

  1. Magento 2 Phpstorm Templates
  2. Phpstorm Magento 2 Download
  3. Phpstorm Magento 2 Free
  4. Phpstorm Magento 2018
  5. Magento 2 Phpstorm Xsd

However, the challenging part is to find the development tools that best suit your needs. There are various tools and extensions built for beginner and average level developers, but not all of them are up to the mark. To save you the time and effort, in this post I have gathered six useful Magento development tools that are useful for every new or experienced Magento developer.

Top Magento Development Tools

Magento Debug

Magento Debug offers a developer debug toolbar. It lists request attributes for developers to understand what is going on. Magento Debug shows all the log lines, all the events that were dispatched during request and all the observers called, along with listing down all the models and collections that were loaded on the server for Magento during a request.

PHPStorm

PHPStorm another helpful Magento development tool that helps in categorizing and managing large projects efficiently. When developing on Magento 2, PHPStorm lets you get around the code more efficiently, saving time and effort. It also provides tools for testing and profiling your application.

MageTool

Click Run 'magento-2-php-storm-plugin' to run the plugin. You should see a new instance of IntelliJ launched with the plugin installed. Make sure the plugin is enabled in IntelliJ settings and indexing is finished. Plugin features should be accessible at this point. Apr 10, 2018 Been having issues with Magento 2 and PHPStorm for a while now. Using the latest 2018.1 release on Mac OS 10.13.4. Often CPU usage would sky rocket and everything just comes to a halt. Setting up MEQP Coding standard checks in PHPStorm Overview. In order to submit extensions to Magento marketplace, source code needs to pass Magento Extension Quality Program Coding Standard checks. You can either do it manually, by following this guide in official Github repository, or by fixing things as you code, by setting up check in PHP.

Scott kit stereo master. Mage Tool is built to facilitate a variety of repetitive tasks during the process of development. Instead of switching between different tools and the admin system, you can simply run commands and improve the workflow using this tool. Mage Tool automates the operations by creating a controller or module etc.

Magento PHPUnit Integration

Magento PHPUnit Integration promotes test-driven development practices for Magento developers. With the use of this tool, you can easily test your code quality and different scenarios. Without changing the core files, a separate database connection is used for tests and allows you to check for any configuration problems or errors.

MageReport.com

MageReport.com evaluates the quality and security of a Magento site and gives a quick insight into the security status. Moreover, you even get to know how to fix the possible vulnerabilities. It looks for all known vulnerabilities not only in the Magento store but also in some of the commonly used third-party extensions.

Easy Template Path Hints

Easy Template Path Hints helps developers to turn on the template path hints for backend and the frontend with ease. With the help of a path hint tool, a developer can easily find the paths for block or template files in the theme on a specific page. In a secure way, you can enable the template path hints by simply passing an additional parameter to the controller.

Conclusion

Development for Magento can get complex without the right tools. The aforementioned Magento development tools should get you started and help you improve efficiency by saving time and reducing the element of error. I hope you found this post useful. If you have any questions, let me know and I’ll get back to you. Do you know any other Magento tool which is helpful with your regular Magento development work? Do share in the comment and I would be happy to include in this article.

Do you need help with setting up these tools in your development environment? You can reach out to us. We are a Magento development agency in India and we have a team of 35+ experienced Magento backend and front-end developers who are always there to assist you. You can Hire the best Magento developer from our team.

Xdebug is an extension for debugging your PHP. The following explains how to configure Xdebug and PhpStorm to debug in your local environment. You can use the IDE of your choice. See the vendor documentation for those applications for further configuration information.

You can configure Xdebug to run in the Magento Cloud Docker environment for local debugging without changing your Magento Commerce Cloud project configuration. See Configure Xdebug for Docker.

Magento 2 Phpstorm Templates

To set up Xdebug, you need to configure a file in your Git repository, configure your IDE, and set up port forwarding. You can configure settings in the magento.app.yaml file. After editing, you can push the Git changes across all Starter environments and Pro Integration environments to enable Xdebug. To push these settings to Pro plan Staging and Production environments, you must enter a ticket.

Once configured, you can debug CLI commands, web requests, and code. Remember, all Magento Commerce Cloud environments are read-only. You need to pull code to your local development environment to perform debugging. For Pro Staging and Production environments, we include additional instructions for Xdebug.

Requirements

To run and use Xdebug, you need the SSH URL for the environment. You can locate the information through the Project Web Interface or your Cloud Onboarding UI.

Configure Xdebug

To configure Xdebug, you need to do the following:

  • Work in a branch to push file updates
  • Configure your IDE, like PhpStorm

For configuring on Pro plan Staging and Production, you need to enter a ticket for Staging and Production.

Get started with a branch

To add Xdebug, we recommend creating a branch to work in and add the files.

To get started with environment branches:

  1. On your local workstation, change to your Cloud project directory.

  2. Switch to the Magento file system owner.

  3. Log in to your Magento project.

  4. List your projects.

  5. List environments in the project. Every environment includes an active Git branch that contains your code, database, environment variables, configurations, and services.

    It is important to use the magento-cloud environment:list command because it displays environment hierarchies, whereas the git branch command does not.

  6. Fetch origin branches to get the latest code.

  7. Checkout, or switch to, a specific branch and environment.

    Git commands only checkout the Git branch. The magento-cloud checkout command checks out the branch and switches to the active environment.

    You can create a new environment branch using the magento-cloud environment:branch <environment-name> <parent-environment-ID> command syntax. It may take some additional time to create and activate a new environment branch.

  8. Use the environment ID to pull any updated code to your local. This is not necessary if the environment branch is new.

  9. (Optional) Create a snapshot of the environment as a backup.

Enable Xdebug in your environment

To enable Xdebug for your project, add xdebug to the runtime:extensions section of the .magento.app.yaml file.

You can enable Xdebug directly to all Starter environments and Pro Integration environments. For Pro Staging and Production, you need to update this file and enter a Support ticket to have it enabled. We enable Xdebug on those environments for you.

To enable Xdebug:

  1. In your local terminal, open the .magento.app.yaml file in a text editor.

  2. In the runtime section, under extensions, add xdebug. For example:

  3. Save your changes to the .magento.app.yaml file and exit the text editor.

  4. Add, commit, and push the changes to redeploy the environment.

When deployed to Starter environments and Pro Integration environments, Xdebug is now available. You should continue configuring your IDE. For PhpStorm, see Configure PhpStorm.

Configure PhpStorm

You need to configure PhpStorm to properly work with Xdebug.

To configure PhpStorm to work with Xdebug:

  1. In your PhpStorm project, open the settings panel.

    • Mac OS X—Select PhpStorm > Preferences.
    • Windows/Linux—Select File > Settings.
  2. In the Settings panel, expand and locate the Languages & Frameworks > PHP > Servers section.

  3. Click the + to add a server configuration. The project name is in grey at the top.

  4. Configure the following settings for the new server configuration:

    • Name—enter the same as the hostname. This value is used in and must match the value for PHP_IDE_CONFIG variable in Debug CLI commands.
    • Host—Enter localhost.
    • Port—Enter 80.
    • Debugger—Select Xdebug.
  5. Select Use path mappings. In the File/Directory pane, the root of the project for the serverName displays.

  6. In the Absolute path on the server column, click (Edit) and add a setting based on the environment:

    • For all Starter environments and Pro Integration environments, the remote path is /app.
    • For Pro Staging and Production environments:

      • Production: /app/<project_code>/
      • Staging: /app/<project_code>_stg/
  7. Change the Xdebug port to 9000 in the Languages & Frameworks > PHP > Debug > Xdebug > Debug Port panel.

  8. Click Apply.

Set up port forwarding

You must map the XDEBUG connection from the server to your local system. To do any type of debugging, you must forward port 9000 from your Magento Commerce Cloud server to your local machine. See one of the following sections:

Port forwarding on Mac or UNIX

To set up port forwarding on a Mac or in a Unix environment:

  1. Open a terminal.

  2. Use SSH to establish the connection.

    Add the -v option to the SSH command to show in the terminal whenever a socket is connected to the port that is being forwarded.

    If an “unable to connect” or “could not listen to port on remote” error is displayed, there could be another active SSH session persisting on the server that is occupying port 9000. If that connection isn’t being used, you can terminate it.

To troubleshoot the connection:

  1. Use SSH to log in to the remote Integration, Staging, or Production environment.

  2. Enter who to view a list of SSH sessions.

  3. View existing SSH sessions by user. Be careful to not affect a user other than yourself!

    • Integration: usernames are similar to dd2q5ct7mhgus
    • Staging: usernames are similar to dd2q5ct7mhgus_stg
    • Production: usernames are similar to dd2q5ct7mhgus
  4. For a user session that is older than yours, find the pseudo-terminal (PTS) value, such as pts/0.

  5. Kill the process ID (PID) corresponding to the PTS value.

    Sample response:

    To terminate the connection, enter a kill command with the process ID (PID).

Port forwarding on Windows

To set up port forwarding (SSH tunneling) on Windows, you must configure your Windows terminal application. For this example, we walk through creating an SSH tunnel using Putty. You can use other applications such as Cygwin. For more information on other applications, see the vendor documentation provided with those applications.

To set up an SSH tunnel on Windows using Putty:

  1. If you have not already done so, download Putty.

  2. Start Putty.

  3. In the Category pane, click Session.

  4. Enter the following information:

    • Hostname (or IP address) field: Enter the SSH URL for your Cloud server
    • Port field: Enter 22
  5. In the Category pane, click Connection > SSH > Tunnels.

  6. Enter the following information:

    • Source port field: Enter 9000
    • Destination field: Enter 127.0.0.1:9000
    • Click Remote
  7. Click Add.

  8. In the Category pane, click Session.

  9. In the Saved Sessions field, enter a name for this SSH tunnel.

  10. Click Save.

  11. To test the SSH tunnel, click Load, then click Open.

    If an “unable to connect” error displays, verify all of the following:

    • All Putty settings are correct
    • You are running Putty on the machine on which your private Magento Commerce Cloud SSH keys are located

Configure Pro Staging and Production

To complete configuration for Pro plan Staging and Production environments, you must enter a Support ticket to have Xdebug enabled and configured in Staging and Production environments.

We enable Xdebug in the environment. Be aware that this is a configuration change that requires us to redeploy your Staging and Production environments.

SSH access to Xdebug environments

For initiating debugging, performing setup, and more, you need the SSH commands for accessing the environments. You can get this information, through the Project Web Interface and your project spreadsheet.

For Starter environments and Pro Integration environments, you can use the following Magento Cloud CLI command to SSH into those environments:

To use Xdebug, SSH to the environment as follows:

For example,

Debug for Pro Staging and Production

Phpstorm Magento 2 Download

To use Xdebug specifically on Pro plan Staging and Production environment, you create a separate SSH tunnel and web session only you have access to. This usage differs from typical access, only providing access to you and not to all users.

You need the following:

  • SSH commands for accessing the environments. You can get this information, through the Project Web Interface or your Cloud Onboarding UI.
  • The xdebug_key value we set when configuring the Staging and Pro environments
Phpstorm Magento 2

To set up an SSH tunnel to a Staging or Production environment:

  1. Open a terminal.

  2. Clean up all SSH sessions.

  3. Set up the SSH tunnel for Xdebug.

To start debugging using the environment URL:

  1. To enable remote debugging, visit the site in the browser with the following added to the URL where KEY is value for xdebug_key:

    This sets the cookie that sends browser requests to trigger Xdebug.

  2. Complete your debugging with Xdebug.

  3. When you are ready to end the session, you can use the following command to remove the cookie and end debugging through the browser where KEY is value for xdebug_key:

    The XDEBUG_SESSION_START passed by POST requests are not supported at this time.

Debug CLI commands

This section walks through debugging CLI commands.

To debug CLI commands:

  1. SSH into the server you want to debug using CLI commands.

  2. Create the following environment variables:

    These variables are removed when the SSH session ends.

  3. Begin debugging

    On Starter environments and Pro Integration environments, run the CLI command to debug.You may add runtime options, for example:

    On Pro Staging and Production environments, you must specify the path to the Xdebug php configuration file when debugging CLI commands, for example:

For debugging web requests

The following steps help you debug web requests.

  1. On the Extension menu, click Debug to enable.

  2. Right click, select the options menu, and set the IDE key to PHPSTORM.

  3. Install the Xdebug client on the browser. Configure and enable it.

Example set up on Chrome

This section discusses how to use Xdebug in Chrome using the Xdebug Helper extension. For information about Xdebug tools for other browsers, consult the browser documentation.

To use Xdebug Helper with Chrome:

  1. Create an SSH tunnel to the Cloud server.

  2. Install the Xdebug Helper extension from the Chrome store.

  3. Enable the extension in Chrome as shown in the following figure.

  4. In Chrome, right-click in the Chrome toolbar.

  5. From the pop-up menu, click Options.

  6. From the IDE Key list, click PhpStorm.

  7. Click Save.

  8. Open your PhpStorm project.

  9. In the top navigation bar, click (Start listening).

    If the navigation bar isn’t displayed, click View > Navigation Bar.

  10. In the PhpStorm navigation pane, double-click the PHP file to test.

Phpstorm Magento 2 Free

Debug code locally

Due to the read-only environments, you need to pull code locally from an environment or specific Git branch to perform debugging.

The method you choose is up to you. You have the following options:

  • Check out code from Git and run composer install

    This method works unless composer.json references packages in private repositories to which you do not have access. This method results in getting the entire Magento codebase.

  • Copy the vendor, app, pub, lib, and setup directories

    This method results in your having all code you can possibly test. Depending on how many static assets you have, it could result in a long transfer with a large volume of files.

  • Copy the vendor directory only

    Because most Magento and third-party code is in the vendor directory, this method is likely to result in good testing although you will not be testing the entire codebase.

Phpstorm Magento 2018

To compress files and copy them to your local machine:

Magento 2 Phpstorm Xsd

  1. Use SSH to login to the remote environment.

  2. Compress the files.

    For example, to compress the vendor directory only, enter

  3. On your local environment, use PhpStorm to compress the files.