Hi Solmaz,
I work a lot with multi-language Moodle sites in English and French here in Canada. Unfortunately there isn't a transparent way, that I have found yet, to only list courses of a certain language in Moodle. You might want to suggest it in the Moodle Tracker. If there is enough demand for such a feature, maybe it will get implemented.
For now, I do have some suggestions to help you out.
You could have a category for English courses and another one for Persian. Then use the mlang tag described below to create a link to the category of courses available for the current language. The link would change depending on the current language.
And just in case a user gets a direct link to a course, you should set the course to force the language of the Moodle user interface to match the language of the course. This is a standard Moodle setting available available when configuring courses.
The down side of this approach is that users will not be able to switch language just any time. So if they start a course in one language, they must stick with it or start over completely in a different language.
Alternatively, you could create multi-language courses which is what we try to do most of the time. This only works if you offer the same courses in English and Persian.
There are a couple of 3rd party plugins I highly recommend to help you achieve this goal. Take a look at:
Multi-Language Content v2 - https://moodle.org/plugins/filter_multilang2
Restriction by Language - https://moodle.org/plugins/availability_language
These will enable you to create single courses that can be displayed in more than one language. In fact, students will be able to switch language at almost any point during the course. You will also be able to use the plain text {mlang} tags to customize other things like the name of your Moodle site.
Reminder: Filters are not automatically enabled when you first install them. I suggest you enable this one for both headings and content.
There are a few limitations though. First, your theme has to support filtering. There are still a lot of less experienced developers who don't pass content through the filtering API's. If you type in mlang tag using the correct syntax and you see the mlang tag in the results, contact the theme developer. It is not hard to fix but needs to be done. The same goes for plugins.
Even Moodle itself does not implement the filter plugin everywhere yet. You may also discover that there isn't enough room in a field to specify content in multiple languages. I am working on getting these issues fixed as I come across them. If you notice a core Moodle field or activity that should but does not support filtering properly, please open a ticket in the Moodle Tracker.
There are some activities and resources, such as Files, that don't have a place to specify a different file depending on the language. That is where the Restriction by Language plugin becomes useful. You can use it to display a different file depending on the user's current language by conditionally displaying several file activities. If you are tracking course completion, I would try to use this as little as possible as it gets complicated to configure course completions when you have many different possible combinations of completed activities.
If you come across other ideas, please share. I am always looking for new ways to make multi-language Moodle sites work smoothly.
Hope you find something useful in all of this.
Best regards,
Michael Milette