function zn_norm_path( $url ) { $p = wp_parse_url( html_entity_decode( trim( $url ) ) ); if ( ! $p ) return ''; $host = isset( $p['host'] ) ? strtolower( preg_replace( '/^www\./', '', $p['host'] ) ) : ''; if ( $host && $host !== 'zahidenotes.com' ) return ''; return '/' . trim( strtolower( isset( $p['path'] ) ? $p['path'] : '' ), '/' ); } function zn_tokens( $s ) { $s = preg_replace( '/_\d+$/', '', strtolower( $s ) ); $parts = preg_split( '/[^a-z0-9]+/', $s, -1, PREG_SPLIT_NO_EMPTY ); $stop = array( 'the', 'of', 'to', 'for', 'and', 'a', 'an', 'in', 'on', 'pdf', 'download', 'free', 'by', 'with', 'is', 'your', 'at', 'all' ); $out = array(); foreach ( $parts as $w ) { if ( in_array( $w, $stop, true ) ) continue; if ( preg_match( '/^20[1-3]\d$/', $w ) ) continue; if ( strlen( $w ) > 3 && substr( $w, -1 ) === 's' ) $w = substr( $w, 0, -1 ); $out[ $w ] = true; } return array_keys( $out ); } function zn_score( $a, $b ) { if ( ! $a || ! $b ) return 0; $i = count( array_intersect( $a, $b ) ); if ( ! $i ) return 0; $u = count( array_unique( array_merge( $a, $b ) ) ); return 0.7 * ( $i / count( $a ) ) + 0.3 * ( $i / $u ); } /* 404 par: jo purana URL approve ho chuka hai usay naye page par 301 */ add_action( 'template_redirect', function () { if ( ! is_404() ) return; $path = '/' . trim( strtolower( (string) parse_url( $_SERVER['REQUEST_URI'], PHP_URL_PATH ) ), '/' ); $map = get_option( 'zn_map', array() ); if ( isset( $map[ $path ] ) && strpos( $map[ $path ], 'id:' ) === 0 ) { $l = get_permalink( (int) substr( $map[ $path ], 3 ) ); if ( $l ) { wp_redirect( $l, 301 ); exit; } } }, 0 ); add_action( 'admin_menu', function () { add_management_page( 'ZN Link Mapper', 'ZN Link Mapper', 'manage_options', 'zn-mapper', 'zn_mapper_page' ); } ); function zn_mapper_form( $act, $offset, $label, $auto = false, $extra = '' ) { echo '
'; wp_nonce_field( 'zn_map' ); echo '' . $extra; echo '
'; if ( $auto ) echo ''; } function zn_mapper_page() { if ( ! current_user_can( 'manage_options' ) ) return; echo '

ZN Link Mapper

'; if ( ! function_exists( 'zn_link_is_broken' ) || ! function_exists( 'zn_find_post_id' ) ) { echo '

Pehle ZN Fixer aur ZN Link Cleaner snippets active hone chahiye.

'; return; } global $wpdb; $act = isset( $_POST['act'] ) ? sanitize_key( $_POST['act'] ) : ''; $offset = isset( $_POST['offset'] ) ? absint( $_POST['offset'] ) : 0; if ( $act ) check_admin_referer( 'zn_map' ); $batch = 50; $busy = false; /* ---- 1) SCAN ---- */ if ( $act === 'scan' ) { $scan = $offset === 0 ? array() : get_option( 'zn_scan', array() ); $ids = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_type IN ('post','page') AND post_status IN ('publish','draft','private') ORDER BY ID ASC LIMIT %d OFFSET %d", $batch, $offset ) ); foreach ( $ids as $id ) { $c = $wpdb->get_var( $wpdb->prepare( "SELECT post_content FROM {$wpdb->posts} WHERE ID=%d", $id ) ); if ( ! preg_match_all( '#]*?href=(["\'])(.*?)\1#is', $c, $mm ) ) continue; foreach ( $mm[2] as $u ) { if ( ! zn_link_is_broken( $u ) ) continue; $path = zn_norm_path( $u ); if ( ! $path || $path === '/' ) continue; $scan[ $path ] = isset( $scan[ $path ] ) ? $scan[ $path ] + 1 : 1; } } update_option( 'zn_scan', $scan, false ); $offset += count( $ids ); if ( count( $ids ) === $batch ) { $busy = true; echo '

Scan ho raha hai... ' . (int) $offset . ' items check hue. Tab band na karein.

'; zn_mapper_form( 'scan', $offset, 'Agla batch', true ); } else { echo '

Scan mukammal. ' . count( $scan ) . ' alag broken URLs mile. Neeche review karein.

'; } } /* ---- 2) SAVE ---- */ if ( $act === 'save' ) { $map = get_option( 'zn_map', array() ); $paths = isset( $_POST['p'] ) ? (array) wp_unslash( $_POST['p'] ) : array(); $chs = isset( $_POST['m'] ) ? (array) wp_unslash( $_POST['m'] ) : array(); foreach ( $paths as $h => $path ) { $path = sanitize_text_field( $path ); $v = isset( $chs[ $h ] ) ? sanitize_text_field( $chs[ $h ] ) : 'skip'; if ( $v === 'remove' || preg_match( '/^id:\d+$/', $v ) ) $map[ $path ] = $v; else unset( $map[ $path ] ); } update_option( 'zn_map', $map, false ); echo '

Choices save ho gaye. Jo URL "naye page" par set hain unka purana link Google/visitors ke liye bhi ab naye page par redirect hoga.

'; } /* ---- 3) APPLY ---- */ if ( $act === 'apply' ) { $dry = ! empty( $_POST['dry'] ); $map = get_option( 'zn_map', array() ); $ids = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_type IN ('post','page') AND post_status IN ('publish','draft','private') ORDER BY ID ASC LIMIT %d OFFSET %d", $batch, $offset ) ); $re = 0; $rm = 0; $posts = 0; foreach ( $ids as $id ) { $old = $wpdb->get_var( $wpdb->prepare( "SELECT post_content FROM {$wpdb->posts} WHERE ID=%d", $id ) ); $new = preg_replace_callback( '#]*?href=(["\'])(.*?)\1[^>]*>(.*?)#is', function ( $m ) use ( $map, &$re, &$rm ) { $path = zn_norm_path( $m[2] ); if ( ! $path || ! isset( $map[ $path ] ) ) return $m[0]; $ch = $map[ $path ]; if ( $ch === 'remove' ) { $rm++; return $m[3]; } if ( strpos( $ch, 'id:' ) === 0 ) { $link = get_permalink( (int) substr( $ch, 3 ) ); if ( ! $link ) return $m[0]; $frag = ( ( $h = strpos( $m[2], '#' ) ) !== false ) ? substr( $m[2], $h ) : ''; $pos = strpos( $m[0], $m[2] ); $re++; return substr_replace( $m[0], $link . $frag, $pos, strlen( $m[2] ) ); } return $m[0]; }, $old ); if ( $new === null || $new === $old ) continue; $posts++; if ( ! $dry ) { if ( ! get_post_meta( $id, '_zn_backup_map', true ) ) add_post_meta( $id, '_zn_backup_map', wp_slash( $old ), true ); $wpdb->update( $wpdb->posts, array( 'post_content' => $new ), array( 'ID' => $id ) ); clean_post_cache( $id ); } } $offset += count( $ids ); echo '

' . ( $dry ? 'DRY RUN: ' : '' ) . (int) $offset . ' items check hue. Is batch mein ' . $posts . ' posts, ' . $re . ' links naye page par, ' . $rm . ' links hata diye' . ( $dry ? ' (kuch save nahi hua)' : '' ) . '.

'; if ( count( $ids ) === $batch ) { $busy = true; zn_mapper_form( 'apply', $offset, 'Agla batch', true, $dry ? '' : '' ); } else { echo '

Mukammal.

'; } } if ( $busy ) { echo ''; return; } /* ---- Buttons ---- */ echo '

Step 1:

'; zn_mapper_form( 'scan', 0, 'Scan karo (broken links dhoondo)' ); $scan = get_option( 'zn_scan', array() ); if ( ! $scan ) { echo ''; return; } arsort( $scan ); $map = get_option( 'zn_map', array() ); /* ---- Review ---- */ $pool = array(); foreach ( $wpdb->get_results( "SELECT ID, post_title, post_name, post_type FROM {$wpdb->posts} WHERE post_status='publish' AND post_type IN ('post','page')" ) as $r ) { $pool[] = array( 'id' => (int) $r->ID, 'title' => $r->post_title, 'type' => $r->post_type, 'tok' => zn_tokens( $r->post_title . ' ' . $r->post_name ) ); } echo '

Step 2: Review

Har purane URL ke saamne sahi page chunein. "Abhi chhod do" ka matlab link jaisa hai waisa rahega. Jo URL kisi page se match nahi karte unhe "Link hata do" par rakhein.

'; echo '
'; wp_nonce_field( 'zn_map' ); echo ''; foreach ( $scan as $path => $n ) { $h = md5( $path ); $slug = basename( $path, '.html' ); $tok = zn_tokens( $slug ); $isP = strpos( $path, '/p/' ) === 0; $numbered = (bool) preg_match( '/_\d+\.html$/', $path ); $c = array(); foreach ( $pool as $p ) { $s = zn_score( $tok, $p['tok'] ); if ( $isP && $p['type'] === 'page' ) $s += 0.05; if ( $s > 0.15 ) $c[] = array( 's' => $s, 'p' => $p ); } usort( $c, function ( $a, $b ) { return $b['s'] <=> $a['s']; } ); $c = array_slice( $c, 0, 4 ); if ( isset( $map[ $path ] ) ) { $sel = $map[ $path ]; } elseif ( $c && ! $numbered && $c[0]['s'] >= 0.6 && ( ! isset( $c[1] ) || $c[0]['s'] - $c[1]['s'] >= 0.1 ) ) { $sel = 'id:' . $c[0]['p']['id']; } else { $sel = 'skip'; } echo ''; } echo '
Purana URLKitni baarKya karna hai
' . esc_html( $path ) . ( $numbered ? '
numbered slug: asli post andaze se nahi milega' : '' ) . '
' . (int) $n . '

'; echo '

Step 3: Articles mein lagao

Pehle Dry run, phir asli.

'; zn_mapper_form( 'apply', 0, 'Dry run (sirf check)', false, '' ); zn_mapper_form( 'apply', 0, 'Asli apply karo' ); echo ''; }

MDCAT 2022 paper PDF download

MDCAT 2022 tests mcqs and answer key may be helpful for you. University of Health Sciences Lahore MDCAT 2022 tests is given in PDF and you can download it below.

Also Read: Any Job Test preparation tips 2023

MDCAT Past Papers

MDCAT papers and tests are available for all year on Zahid Notes in PDF. Now you can check August 2022 MDCAT test below.

You may like to read MDCAT 2023 complete information

MDCAT 2022 Papers

Below are the MCQs that appeared in 2022 MDCAT.

Also Download: MDCAT Past papers solved pdf download

Biology MCQs

1. Sarah is a chemistry student who is carrying out an experiment between alcohol and acetic acid in the laboratory. The product formed at the end of the experiment will be:

A) Glycogen and water molecules
B) Glucose and oxygen
C) An ester and water molecules
D) Glycerole and sulphuric acid

2. The finger-like infoldings which are formed by the inner membrane of mitochondria are called:

A) Ribosomes
B) Matrix
C) Porin
D) Cristae

3. The main neurotransmitter for synapses is _____________ which lie outside the central nervous system.

A) Acetylcholine
B) Acetaldehyde
C) Choline
D) Phosphatidylcholine

4. The structure present in the eukaryotic cell but absent in prokaryotic cell is:

A) DNA
B) Ribosomes
C) Cell Surface membrane
D) Nucleus

Download PDF Test

You may also read:

4. How to prepare MDCAT Entry test at home

Leave a Comment